Zuse Z3

Van Wikipedia, de gratis encyclopedie

Nachbau der Zuse Z3 im Deutschen Museum in München

Die Z3 war einer der ersten funktionsfähigen Digitalrechner weltweit und wurde am 12. Mai 1941 von Konrad Zuse in seiner Werkstatt in der Methfesselstraße 7 in Berlin-Kreuzberg vorgestellt.[1] Zuse hatte ihn ab 1938 in Zusammenarbeit mit Helmut Schreyer in Berlin konstruiert. Die Z3 wurde in elektromagnetischer Relaistechnik mit 600 Relais für das Rechenwerk und 1400 Relais für das Speicherwerk ausgeführt.[2] Die Z3 verwendete (wie auch bereits die Z1) die von Konrad Zuse in die Rechnertechnik eingeführte binäre Gleitkommaarithmetik. Im Gegensatz zum Entwurf und der Benutzung des ENIAC genügte der Entwurf der Z3 nicht der späteren Definition eines turingmächtigen Computers und sie wurde auch nie so genutzt. Erst nach dem Tod des Erfinders Konrad Zuse am 18. Dezember 1995[3] fand man 1998 heraus, dass sie rein theoretisch gesehen durch trickreiche Nutzung aufwendiger Umwege dennoch diese Eigenschaft hatte.[4][5] Die Z3 gilt als erster funktionsfähiger Universalrechner der Welt.[6] Sie ist auch der erste Rechner, der umgekehrte polnische Notation (UPN) nutzte (allerdings noch nicht so benannt). Die Maschine wurde am 21. Dezember 1943 bei einem Bombenangriff zerstört.

Geschichte[Bearbeiten | Quelltext bearbeiten]

Berliner Gedenktafel für die Zuse Z3 in der Methfesselstraße 7 in Berlin-Kreuzberg

Der Entwicklung der Z3 ging die Entwicklung der noch vollständig mechanischen Z1 und des Übergangsmodells Z2 voraus. Die Deutsche Versuchsanstalt für Luftfahrt hatte sich die Z2 angeschaut und gab Zuse 25.000 RM (entspricht heute etwa 120.000 EUR[7]), damit er die Z3 bauen konnte.[8] Am 12. Mai 1941 wurde die Z3 schließlich einer Gruppe von Wissenschaftlern (darunter Alfred Teichmann und Curt Schmieden) vorgestellt. Als Zuse 1941 kurzzeitig in den Krieg eingezogen wurde, schrieb er einem Freund: „Andere lassen die Familie zurück, ich die Z3.“ (Konrad Zuse: Berühmte Alumni der Technischen Universität Berlin)[8]

Die originale Z3-Rechenmaschine wurde im Zweiten Weltkrieg durch Bombenangriffe auf Berlin am 21. Dezember 1943 zerstört. Für Zuse war das ein tragischer Moment, da er keinen Beweis mehr hatte, dass es wirklich eine funktionsfähige Z3 gegeben hatte.[8] Ein funktionsfähiger Nachbau, der 1961 von der Zuse KG zu Ausstellungszwecken angefertigt wurde, befindet sich im Deutschen Museum in München. Am ehemaligen Standort, an der Ruine des Hauses in der Methfesselstraße im Berliner Stadtteil Kreuzberg, erinnert eine Gedenktafel an Zuses Wirkungsstätte. Seit Konrad Zuses 100. Geburtstag am 22. Juni 2010 ist zudem ein Nachbau der Z3 im Konrad-Zuse-Museum in Hünfeld ausgestellt. Ebenfalls hat der Schweizer Informatiker Christof Traber die Z3 basierend auf Zuses Patentschrift von 1941 nachgebaut. Sein Nachbau steht heute in der „Enter Technikwelt Solothurn“ in Derendingen (Schweiz) und wird monatlich öffentlich vorgeführt.[9]

Technik[Bearbeiten | Quelltext bearbeiten]

Merkmale[Bearbeiten | Quelltext bearbeiten]

Neben der Tatsache, dass die Z3 der erste voll funktionsfähige programmierbare Digitalrechner war, enthielt sie auch bereits sehr viele Merkmale, die in modernen Rechnern zu finden sind:

Die Z1 verfügte zwar bereits ebenfalls über fast alle der oben angeführten Merkmale der Z3, außerdem waren das grundlegende Design und speziell das Rechenwerk von beiden Rechnern sehr ähnlich, allerdings erregte die Z1 deutlich weniger Aufsehen, weil ihr Rechenwerk aufgrund des mechanischen Aufbaus nicht sehr zuverlässig arbeitete.

Aufbau[Bearbeiten | Quelltext bearbeiten]

Relais der Computer vom Typ Z3, Z5, Z11

Die Z3 bestand aus

  • einer Relais-Gleitkommaarithmetikeinheit (600 Relais) für Addition, Subtraktion, Multiplikation, Division, Quadratwurzel, Dezimal-Dual- und Dual-Dezimal-Umwandlung. Das Rechenwerk hat zwei Register R1 und R2.
  • einem Relais-Speicher (1400 Relais) mit einer Speicherkapazität von 64 Worten, je 22 Bit (1 Vorzeichenbit, 7 Bit Exponent, 14 Bit Mantisse)
  • einem Lochstreifenleser für Filmstreifen, um Programme einzulesen (nicht aber Daten)
  • 30.000 Kabeln[8]
  • einer Tastatur mit Lampenfeld für Ein- und Ausgabe von Zahlen und manuelle Steuerung von Berechnungen.

Der Rechner sah aus wie eine Schrankwand und füllte einen ganzen Raum. Er wog ca. eine Tonne.[8]

Funktionsweise[Bearbeiten | Quelltext bearbeiten]

Die Z3 ist eine getaktete Maschine. Die Taktung wird von einem Elektromotor übernommen, der eine Taktwalze antreibt, eine Trommel, die sich ca. 5,3 Mal pro Sekunde dreht und während einer Drehung die Steuerung der einzelnen Relaisgruppen übernimmt. Die Drehgeschwindigkeit der Trommel entspricht dabei dem Verarbeitungstakt moderner Hauptprozessoren, womit bei diesem Rechner eine Geschwindigkeit von 5,3 Hz gegeben ist. Der Arbeitsspeicher der Z3 umfasst 176 Byte (64 Worte mit je 22 Bit).[10] Die Maschinensprache der Z3 umfasste neun Befehle[11]:

Befehl Beschreibung Dauer (Zyklen)
Pr z Speicherzelle z in Register R1/R2 laden 1
Ps z R1 in Speicherzelle z schreiben 0–1
La Addition: R1 ← R1 + R2 3
Ls Subtraktion: R1 ← R1 – R2 4–5
Lm Multiplikation: R1 ← R1 × R2 16
Li Division: R1 ← R1 / R2 18
Lw Quadratwurzel: R1 ← √(R1) 20
Lu Dezimalzahl einlesen in R1/R2 9–41
Ld R1 als Binärzahl ausgeben 9–41

Die Eingabe numerischer Daten muss über die Tastatur erfolgen.

Der Lochstreifen kann nur Befehle enthalten (diese sind darauf mit 8 Bit kodiert), aber keine Zahlen. Daher müssen numerische Daten über die Tastatur eingegeben werden, weiters ist über die Tastatur auch die direkte Ausführung aller Operationen bis auf Speicherzugriffe („Pr z“ und „Ps z“) möglich. Die genaue Kodierung auf Lochstreifen findet sich im Artikel Opcode. Die Z3 kennt keine Sprungbefehle, ist jedoch mit Hilfe geschickter Ausnutzung der endlichen Rechengenauigkeit turingmächtig, wie Raúl Rojas 1998 zeigte.[12] Allerdings ist dieses Resultat nur von theoretischer Bedeutung, da Programme mit Sprunganweisungen umständlich transformiert werden müssen und die Programmlaufzeit steigt.

Speicherung von Konstanten[Bearbeiten | Quelltext bearbeiten]

Angenommen, wir möchten die Konstanten a4, a3, a2 und a1 in den Speicheradressen 4, 3, 2 und 1 speichern, und den Wert x an Adresse 5. Das Programm, das die gewünschte Berechnung durchführt, sieht wie folgt aus:

Befehl Beschreibung
Pr 4 Laden von a4 in R1
Pr 5 Laden von x in R2
Lm Multiplikation von R1 und R2, Ergebniss in R1
Pr 3 Laden von a3 in R2
Ls₁ Addition R1 und R2, Ergebniss in R1
Pr 5 Laden von x in R2
Lm Multiplikation von R1 und R2, Ergebniss in R1
Pr 2 Laden von a2 in R2
Ls₁ Addition von R1 und R2, Ergebniss in R1
Pr 5 Laden von x in R2
Lm Multiplikation von R1 und R2, Ergebniss in R1
Pr 1 Laden von a1 in R2
Ls₁ R1 und R2 addieren, ergibt R1
Ld Ergebnis anzeigen

Nachdem die letzte Anweisung ausgeführt wurde, wird der Prozessor auf seine ursprüngliche Zustand. Ein neuer Programmablauf kann gestartet werden.[13]

Rechenwerk[Bearbeiten | Quelltext bearbeiten]

Jede Rechenoperation der Z3 basiert auf der Addition zweier natürlicher Zahlen. Diese Basisoperation der Addition wird durch XOR(XOR(x, y), CARRY(x, y)) berechnet, wobei CARRY(x, y) die Übertragsfunktion ist, zum Beispiel CARRY(0011011, 1010110) = 0111100.

  • Eine Addition zweier Gleitkommazahlen ist realisiert durch Berechnung der Differenz der Exponenten, anschließend entsprechendem Angleichen der Mantisse einer Zahl und schließlich Addition der Mantissen.
  • Eine Subtraktion entspricht einer Addition, bei der das Zweierkomplement der zweiten Mantisse verwendet wird, und der Übertrag entfällt.
  • Eine Multiplikation entspricht einer Addition der Exponenten und anschließender Multiplikation der Mantissen. Die Multiplikation der Mantissen wird dabei durch eine iterative Addition realisiert: 1011×0101 = 1011 + 10110×010 = 1011 + 101100×01 = 110111 + 1011000×0 = 110111.
  • Eine Division entspricht einer Multiplikation, jedoch werden die Exponenten subtrahiert und eine iterative Subtraktion für die Division der Mantissen verwendet.
  • Der Algorithmus zum Ziehen einer Wurzel ist durch eine iterative Division realisiert (siehe Patentschrift).

Allgemein besteht das Rechenwerk aus zwei Teilen, einem Werk für die Rechnung mit Exponenten und ein Werk für die Rechnung mit Mantissen. Für Befehle, bei denen iterative Methoden zum Einsatz kommen (Lm, Li, Lw, Lu, Ld), wird ein Sequenzer benutzt, um einzelne Teile des Rechenwerks anzusteuern. Dies entspricht grob modernen Mikroprogrammen.

Betrieb[Bearbeiten | Quelltext bearbeiten]

Für die Z3 wurden einige Prüfprogramme und ein Programm für die Berechnung einer komplexen Matrix geschrieben, das entsprechend einer Lösung von Hans Georg Küssner[14] zur Berechnung von kritischen Flatterfrequenzen bei Tragfügeln verwendet wurde. Der Einsatz des Rechners wurde aber damals nicht als dringlich eingestuft, so dass es nie zu einem Routinebetrieb kam.[15]

Vergleich mit ENIAC[Bearbeiten | Quelltext bearbeiten]

Der ENIAC (im Vordergrund Betty Snyder, im Hintergrund Glen Beck)

In den USA und weiten Teilen der Welt wird anstelle der Z3 der 1944 gebaute ENIAC (Electronical Numerical Nuberical Integrator and Computer) als der erste Computer angesehen. Jahrzehntelang galt dieser bahnbrechende Rechner als das Spitzenmodell seiner Zeit und wurde von der Presse als der erste Computer der Welt gefeiert. Andere bedeutende Beiträge zur Entwicklung der Computertechnologie, wie die Arbeiten von John Atanasoff in den USA oder die Innovationen von Konrad Zuse, wurden dagegen weitgehend übersehen.[16] Dies wird damit begründet, dass die beiden Rechner unterschiedliche Eigenschaften haben und bei beiden Maschinen jeweils unterschiedliche Kriterien herangezogen werden, um sie als „Computer“ zu definieren.

Die Z3 war der erste Digitalrechner und gleichzeitig der erste binäre, programmierbare und turingmächtige. Allerdings war sie im Gegensatz zum ENIAC, bei dem Röhren anstatt Relais eingesetzt wurden, nicht elektronisch (ein von Helmut Schreyer gestellter Förderantrag für die Konstruktion eines elektronischen Nachfolgemodells der Z3 wurde von der Reichsregierung abgelehnt, da diese das Projekt als nicht kriegswichtig einstufte)[17]; außerdem ist die Turingmächtigkeit der Z3 nur dank eines vom Konstrukteur nicht vorhergesehenen Tricks möglich. Der ENIAC war der fünfte Digitalrechner der Geschichte und der erste, der die Kriterien „elektronisch“, „programmierbar“ und „turingmächtig“ gleichzeitig erfüllte. Er arbeitete mit dem Dezimalsystem, das heißt, er war kein Binärcomputer wie die Z3 und wie alle modernen Computer. In Deutschland wird hingegen eher die Z3 als erster Digitalrechner betrachtet – erstens aufgrund ihres höheren Alters, und zweitens wegen ihrer binären Arbeitsweise, mit der auch heute noch alle Computer arbeiten, zusätzlich wird dem Aspekt der Hardware, aus der die Rechner jeweils bestehen, eine geringere Bedeutung beigemessen.

Die historische Präferenz für den ENIAC kann auch darin begründet liegen, dass diesem nach dem Zweiten Weltkrieg in den USA eine ungleich größere Aufmerksamkeit zuteilwerden konnte als der Z3, weil diese 1943 bei einem Bombenangriff auf Berlin zerstört wurde.

Computermodell Land Inbetriebnahme Gleitkomma-
arithmetik
Binär Elektronisch Programmierbar Turingmächtig
Zuse Z3 Deutschland Mai 1941 Ja Ja Nein Ja, mittels Lochstreifen über Umwege, nie genutzt
Atanasoff-Berry-Computer USA Sommer 1941 Nein Ja Ja Nein Nein
Colossus UK 1943 Nein Ja Ja Teilweise, durch Neu­ver­kabelung Nein
Mark I USA 1944 Nein Nein Nein Ja, mittels Lochstreifen Ja
Zuse Z4 Deutschland März 1945 Ja Ja Ja Ja, mittels Lochstreifen keine bedingte Sprunganweisung
um 1950 Ja Ja Ja Ja, mittels Lochstreifen Ja
ENIAC USA 1946 Nein Nein Ja Teilweise, durch Neu­ver­kabelung Ja
1948 Nein Nein Ja Ja, mittels Wider­stands­matrix Ja
Z3-Nachbau mit modernen Relais (Horst Zuse 2010, Konrad-Zuse-Museum Hünfeld)

Literatur[Bearbeiten | Quelltext bearbeiten]

  • Jürgen Alex, Hermann Flessner, Wilhelm Mons, Horst Zuse: Konrad Zuse: Der Vater des Computers. Parzeller, Fulda 2000, ISBN 3-7900-0317-4.
  • Jürgen Alex: Wege und Irrwege des Konrad Zuse. In: Spektrum der Wissenschaft. 1/1997, ISSN 0170-2971. (dt. Ausgabe von Scientific American)
  • Jürgen Alex: Zum Einfluß elementarer Sätze der mathematischen Logik bei Alfred Tarski auf die drei Computerkonzepte des Konrad Zuse. Dissertation TU Chemnitz 2006. online (PDF; 22,1 MB)
  • Jürgen Alex: Zur Entstehung des Computers – von Alfred Tarski zu Konrad Zuse. Zum Einfluß elementarer Sätze der mathematischen Logik bei Alfred Tarski auf die Entstehung der drei Computerkonzepte des Konrad Zuse. VDI Verlag, Düsseldorf 2007, ISBN 978-3-18-150051-4, ISSN 0082-2361. online (PDF; 22,3 MB)
  • Raúl Rojas (Hrsg.): Die Rechenmaschinen von Konrad Zuse. Springer, Berlin 1998, ISBN 3-540-63461-4.
  • Karl-Heinz Czauderna: Konrad Zuse, der Weg zu seinem Computer Z3. Oldenbourg, München/Wien 1979 (Ausgabe 120 von Berichte der Gesellschaft für Mathematik und Datenverarbeitung, Bonn), ISBN 3-486-23141-3.
  • Hasso Spode: Der Computer – eine Erfindung aus Kreuzberg, in: Geschichtslandschaft Berlin, Band 5, Nicolai, Berlin 1994, ISBN 3-87584-474-2.
  • Raúl Rojas: Konrad Zuse’s Legacy: The Architecture of the Z1 and Z3. In: IEEE Annals of the History of Computing. Band 19, Nr. 2, 1997, ISSN 1058-6180, S. 5–16 (ed-thelen.org [PDF; 312 kB]).
  • Konrad Zuse: Der Computer – Mein Lebenswerk. 5., unveränd. Auflage. Springer-Verlag, Berlin Heidelberg 2010, ISBN 978-3-642-12095-4 (100 Jahre Zuse).

Weblinks[Bearbeiten | Quelltext bearbeiten]

Commons: Zuse Z3 – Sammlung von Bildern, Videos und Audiodateien

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. Detlef Stoller: Der erste Computer der Welt: Z3 von Konrad Zuse fand damals kaum Beachtung. 12. Mai 2021, abgerufen am 24. April 2024 (deutsch).
  2. Zuse 2010 S. 55.
  3. Detlef Stoller: Der erste Computer der Welt: Z3 von Konrad Zuse fand damals kaum Beachtung. 12. Mai 2021, abgerufen am 24. April 2024 (deutsch).
  4. Konrad Zuse – Pionier der Computertechnik – Bedeutende Informatiker Teil 2. Abgerufen am 27. Februar 2024.
  5. Die Entwicklung der Zuse Z3. Abgerufen am 27. Februar 2024.
  6. Vor 70 Jahren: Amerika lernt den ersten elektronischen Universalrechner ENIAC kennen, Heise online am 14. Februar 2016
  7. Diese Zahl wurde mit der Vorlage:Inflation ermittelt, ist auf volle 10.000 EUR gerundet und vergleicht 1941 mit Januar 2024.
  8. a b c d e Kristina R. Zerges, Stefanie Terp: Konrad Zuse. Der Vater des Computers. Hrsg.: Presse- und Informationsreferat der Technischen Universität Berlin (= Berühmte Alumni der Technischen Universität Berlin). omnisatz GmbH, Berlin.
  9. Öffentliche Führung Enter Technikwelt Solothurn | Enter Technikwelt Solothurn. Abgerufen am 27. Januar 2024.
  10. Horst Zuse: Z3. In: zuse.de. 21. Januar 2013, abgerufen am 28. September 2021.
  11. Raúl Rojas: Konrad Zuse’s Legacy: The Architecture of the Z1 and Z3. In: IEEE Annals of the History of Computing. Vol. 19, Nr. 2, 1997, S. 5–16 (englisch, ed-thelen.org [PDF; 305 kB; abgerufen am 11. Oktober 2018]).
  12. Raúl Rojas: How to make Zuse’s Z3 a universal computer. In: Annals of the History of Computing. Band 20, Nr. 3. IEEE, 1998, ISSN 1058-6180, doi:10.1109/85.707574 (PDF Scan, PDF, HTML (Memento vom 3. August 2014 im Internet Archive)).
  13. Raúl Rojas: Konrad Zuse's Early Computers. Springer, 2023, ISBN 978-3-03139876-6, S. 229.
  14. Hans Dieter Hellige (Hrsg.): Geschichten der Informatik. Visionen, Paradigmen, Leitmotive. Springer, Berlin 2004, ISBN 3-540-00217-0.
  15. Zuse 2010 S. 57.
  16. Konrad Zuses Rechenmaschine: sechzig Jahre Computergeschichte. Abgerufen am 24. April 2024.
  17. Hans-Willy Hohn: Kognitive Strukturen und Steuerungsprobleme der Forschung. Kernphysik und Informatik im Vergleich (= Schriften des Max-Planck-Instituts für Gesellschaftsforschung Köln. Band 36). Frankfurt am Main/New York 1998, ISBN 3-593-36102-7, S. 148 (Online [PDF; 1,3 MB]).