Kategorien
Seiten
-

IT Center Blog

Die Anfänge der Computertechnik – Teil 2

13. Januar 2025 | von

In unserem letzten Beitrag über die Anfänge der Computertechnik, haben wir bereits einen Blick auf die ersten Rechenmaschinen von Konrad Zuse geworfen. Nun wollen wir uns die einzelnen Komponenten der Z3, die als erster voll programmierbarer Computer der Welt gilt, genauer ansehen und herausfinden, welche ihrer Konzepte in der modernen Computertechnik immer noch benutzt werden. Insbesondere geht es in diesem Beitrag um die Architektur der Z3.

 

Steuer-/Rechenwerk

Die Z3 von Konrad Zuse bestand aus zwei zentralen Komponenten: dem Steuerwerk und dem Rechenwerk. Beide Bauteile erfüllten essenzielle Funktionen, die in modernen Computern typischerweise in der CPU kombiniert sind.
Das Steuerwerk war verantwortlich für die Interpretation der Befehle, die Koordination der verschiedenen Teile der Maschine sowie das Management des Datenflusses zwischen Speicher und Rechenwerk. Auch interpretierte es die Eingaben der mechanischen Tastatur und des Lochstreifenlesers.

Das Rechenwerk hingegen war für die Durchführung grundlegender arithmetischer Operationen verantwortlich. Es führte Addition und Subtraktion direkt aus, während Multiplikation und Division durch wiederholte Addition beziehungsweise Subtraktion realisiert wurden. Zudem ermöglichte das Rechenwerk auch das Ziehen von Quadratwurzeln mithilfe des Heron-Verfahrens, einem iterativen Verfahren, welches sich schrittweise der Quadratwurzel einer gegebenen Zahl annähert und somit eine effiziente Berechnung ermöglicht.

Die Zahlen wurden in der wissenschaftlichen Schreibweise des Dezimalsystems eingegeben und dann vom Rechenwerk automatisch umgewandelt. Während viele der frühen Computer intern mit einem Festkommasystem arbeiteten, zeichnete sich die Z3 durch die Verwendung einer normalisierten Gleitkommadarstellung im Binärsystem aus. Diese Darstellung ähnelt der heute genutzten wissenschaftlichen Schreibweise, jedoch in binärer Form und ermöglichte sowohl einen erweiterten Zahlenbereich als auch eine präzisere Wertedarstellung. Die kleinste speicherbare Zahl betrug 1,08 × 10^-19, während die größte 9,2 × 10^18 war; kleinere oder größere Zahlen führten zu -∞ beziehungsweise +∞.

Ähnlich wie moderne CPUs verfügte die Z3 bereits über sogenannte Register – kleine Speicher innerhalb des Rechenwerks beziehungsweise der CPU. In diesen werden Zwischenergebnisse während der Berechnungen gespeichert. Durch die kürzere Zugriffszeit auf diese Register können Rechnungen erheblich beschleunigt werden, da häufig benutzte Werte nicht aus dem deutlich langsameren Massenspeicher oder Arbeitsspeicher geladen werden müssen.

 

Massenspeicher

Auch wenn die Z3 nur einen Speicher hatte und keinen getrennten Massenspeicher und Arbeitsspeicher wie moderne Computer, war das Prinzip doch ähnlich: Daten werden bitweise gespeichert. Dies wurde durch Relais realisiert, wie bereits in Teil 1 dieser Blogreihe erläutert. So konnten die Bits durch Ansteuerung der jeweiligen Relais relativ einfach geändert und infolgedessen Daten gespeichert, gelesen und modifiziert werden.

Anhand der Speicherkapazität lässt sich der Fortschritt der Technik erkennen: Die Z3 konnte 64 Zahlen mit jeweils 22 Bit speichern, was einer maximalen Speicherkapazität von 176 Byte entspricht. Im Gegensatz zu modernen Systemen konnte dieser Speicher jedoch nicht dynamisch in seiner Blockgröße angepasst werden. Zum Vergleich: Ein gängiges Solid-State-Laufwerk (SSD) hat heutzutage eine Kapazität von mindestens 1 Terabyte – also 1 Billion Byte.

 

Taktrate

Die Z3 war, ähnlich wie moderne CPUs, taktbasiert. Jeder ihrer Zyklen war in 5 Phasen unterteilt. In der ersten Phase wurden die Befehle von den Lochstreifen gelesen, in Phase zwei und drei fanden die Rechenoperationen statt und in den Phasen vier und fünf wurde das Argument für die nächste Operation vorbereitet oder das Ergebnis zurückgeschrieben.

Die möglichen Befehle und deren Laufzeiten waren:

  • Addition: 3 Zyklen
  • Subtraktion: 4 oder 5 Zyklen, je nach Ergebnis
  • Multiplikation 16 Zyklen
  • Division: 18 Zyklen
  • Quadratwurzel: 20 Zyklen
  • Tastatureingabe lesen: 9 – 41 Zyklen, je nach Exponent
  • Displayausgabe: 9 – 41 Zyklen, je nach Exponent
  • Vom Speicher lesen: 1 Zyklus
  • In Speicher schreiben: 0 oder 1 Zyklus

Da laut Konrad Zuse eine Multiplikation drei Sekunden dauerte, können wir die Taktrate auf ca. 5,33 Hertz schätzen.

 

Während andere frühe Computer ähnliche Komponenten aufwiesen, zeichnete sich die Z3 durch ihre klare Trennung zwischen Steuer- und Rechenwerk, sowie dem Massenspeicher aus. Zudem führte die Z3 eine normalisierte Gleitkommadarstellung im Binärsystem ein, was sie von anderen Systemen unterschied. Ihr Massenspeicher nutzte Relais zur bitweisen Speicherung von Daten und erlaubte so eine flexiblere Handhabung von Informationen.

In unserem nächsten Blogbeitrag werden wir uns eingehender mit der Programmierbarkeit der Z3 befassen und untersuchen, wie Eingaben verarbeitet wurden sowie welche Herausforderungen dabei entstanden.

 


Verantwortlich für die Inhalte dieses Beitrags ist Marc Weerts.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert