D2 (Computer)
Der programmierbare Rechenautomat D2 (Dresden 2) war ein Computertyp aus der DDR.
Der intern mit Dualzahlen arbeitende Digitalrechner wurde zwischen 1956 und 1959 an der TH Dresden entworfen und gebaut. Sein Konstrukteur war Nikolaus Joachim Lehmann, Vater vieler historischer Computer aus Dresden.
Der D2 war, wie sein Vorgänger D1, ein Röhrencomputer. Er verfügte über 1400 Elektronenröhren, erreichte eine Verarbeitungsgeschwindigkeit von 1000 FLOPS. Sein Trommelspeicher hatte 256 Spuren („Bahnen“), auf jeder Bahn Platz für 16 56-Bit-Wörter (2 Befehle je Wort) und konnte somit 4096 Wörter zu je 56 Bit speichern. Es gab 11 Register. Die Trommel hatte außerdem einen Schnellspeicher-Teil mit mittlerer Wartezeit von nur 0,34 ms (320 Plätze); Transporte vom Haupt- zum Schnellspeicher und zurück konnten parallel zur Rechnung erfolgen.
Nachfolger des D2 waren die Digitalrechner D3 und D4.
Befehlsaufbau / Befehlsnotation
[Bearbeiten | Quelltext bearbeiten]Der D2 war eine Einadressmaschine. Jeder Befehl hatte 7 Zeichen (28 Bits): 2 Zeichen (8 Bits) Adresse 1.Operand (Register), Operationscode / 3 Zeichen (12 Bits) Adresse 2.Operand (Bahnnr. 8 Bits, Pos. auf der Bahn 4 Bits) / 2 Zeichen (8 Bits) Index- und Schrittregister, Sonderzeichen.
Programmausschnitt
[Bearbeiten | Quelltext bearbeiten]
Das 1967/68 im Rahmen einer Diplomarbeit (Ein Rechenprogramm zur Bestimmung der Toleranzempfindlichkeit von Abzweigschaltungen, TU Dresden, Institut für Fernmeldetechnik, Autor Klaus Matzdorff) erstellte Programm hat einen Umfang von 29 Bahnen und ist in Maschinensprache geschrieben. Der rechts abgebildete Ausschnitt „Bahn 5“ zeigt ein Unterprogramm zum Ausdruck von Ergebnissen; auf der Bahn gibt es auch Daten (Text, 2 Wörter Pos. 0 und 13) und zwei leere Wörter für die Adressen der auszudruckenden Ergebnisse.
Um die Rechengeschwindigkeit zu erhöhen, konnten Bahnen in Schnellspeicher kopiert (Kommentar im Bild „Bahntransport“) und dort abgearbeitet werden, was bei Bahnen mit Schleifen innerhalb des Bahnbereichs, wie hier, besonders sinnvoll war.
Schleifen sollten wenn möglich innerhalb einer Bahn gebildet werden, um die pneumatisch gesteuerte Bewegung des Zugriffsschlittens der Trommel bei Bahnwechsel zu minimieren. Manchmal lief der Schlitten heiß und die Maschine schaltete ab, wenn zu häufig bahnübergreifende Sprünge ausgeführt werden mussten.
Die Speicheradressen mussten (relativ zu der in einem speziellen Register (β0, β1 …) stehenden Startbahn-Adresse) direkt angegeben werden (Bahn / Position auf der Bahn) oder, wie bei den Sprüngen im Beispiel, relativ zur Befehlsposition. Programmierhilfen (Assembler o. ä.) waren 1968 noch nicht verfügbar.
Daten-Ein- und -Ausgabe
[Bearbeiten | Quelltext bearbeiten]Programm und Daten wurden mittels Fernschreibmaschine auf 5-Kanal-Lochstreifen übertragen. Ein Paritätsbit für die Fehlerkontrolle gab es beim 5-Kanal-Lochstreifen nicht, stattdessen wurde bei einem Probelauf des fertigen Lochstreifens eine Kontrollsumme ermittelt, die dann am Ende des Lochstreifens händisch per „Bitstanze“ eingestanzt wurde. Falls bei der nachfolgenden Verwendung des Lochstreifens die ermittelte Kontrollsumme nicht mit der eingestanzten übereinstimmte, wurde die Eingabe verworfen.
Für weitere Eingaben und die Ausgabe von Rechenergebnissen standen zwei elektrische Schreibmaschinen zur Verfügung.