LGP-30
Seit dem 24.11.1999 besitzt das Computermuseum einen LGP-30. Technisch ist dieser Computer der ersten Generation in einem sehr gut erhaltenen Originalzustand. Das einzige, was nicht mehr original ist, ist die Lackierung. Irgendwer hat ihn irgendwann Mintgrün gespritzt.
Allgemeines
Der LGP-30 wurde ab 1957 gebaut, zunächst in den USA von der Firma Librascope General Precision oder Royal Mc Bee. Ab ca 1958 wurde er dann von der deutschen Firma Schoppe und Faeser in Minden in Westfalen in Lizenz hergestellt. Der LGP-30 im Computermuseum stammt aus deutscher Produktion, und er hat die Seriennummer 4.
Im Firmenprospekt wird als besonderes Merkmal die leichte Transportierbarkeit wegen des geringen Gewichtes von nur 384 kp gelobt, sowie die Tatsache, daß er keinen klimatisierten Raum benötigt, weil die Leistungsaufnahme lediglich 1,5kW beträgt.
Noch eine Anmerkung zum Gewicht: Um ihn in seinem gegenwärtigen Domizil von der Palette zu heben, brauchte ich aus dem Grundstudiumspool nur 5 "freiwillige" Studenten zusätzlich zu rekrutieren. Mit den beiden, die mir schon ab Esslingen geholfen hatten, waren wir beim Abladen dann zu acht, so daß für jeden nur noch etwa 45 kp übrig blieben.
Überblick über die Technik
Der Rechner ist mit 113 Röhren bestückt und hat, wie oben schon erwähnt, eine Leistungsaufnahme von 1,5kW.
Als Hauptspeicher hat er eine Magnettrommel mit 4096 Worten a 32 Bit.
Der Rechner ist seriell organisiert, und alle Register befinden sich
auf der Magnettrommel:
Der Akkumulator, der Programmzähler und das Befehlsregister.
Dadurch kommt die gesamte CPU mit 24 Röhren aus, die zusammen 15 Flip-Flops, 6 Katodenfolger und 6 Umkehrstufen bilden. Der Rest der Röhren wird für die Ansteuerung der Magnettrommel und des Flexowriters, für den Taktgenerator, sowie für die Schreib-Leseverstärker benötigt.
Befehlssatz
Der Befehlssatz besteht aus 16 Befehlen:
0001 B mn Akkumulator aus Speicher mn füllen "Bring" 1100 H mn Akkumulator in mn speichern ohne zu löschen "Hold" 1101 C mn Akkumulator nach Speichern in mn löschen "Clear" 1110 A mn Addieren "Add" 1111 S mn Subtrahieren "Subtract" 0111 M mn Multiplizieren, obere Hälfte halten "Multiply" 0110 N mn Multiplizieren, untere Hälfte halten 0101 D mn Dividieren "Divide" 1001 E mn Logisches Produkt bilden "Extract" 1010 U mn Unbedingter Sprung nach mn "Unconditional jump" 1011 T mn Sprung nach mn nur, wenn Akkuinhalt negativ "Test and jump" 0010 Y mn Adressenersatz 0011 R mn Adressenrückkehr "Return" 0100 I Eingabe "Input" 1000 P m Schreiben des durch m bezeichneten Symbols "Print" 0000 Z m Halt, wenn der mit m bezeichnete Druckschalter des Bedienungsfeldes nicht gedrückt ist.
Jeder OP-Code wird durch einen Buchstaben symbolisiert. Der binäre Code des Befehls entspricht dem Code, mit dem der Buchstabe vom Friden Flexowriter kodiert wird, wobei die beiden niederwertigsten Bits ignoriert werden. Der ASCII-Code war zu der Zeit noch Zukunftsmusik. Auf dem Bild von der Tastatur des Flexowriter sind 16 weiße Tasten zu erkennen: Das sind die Buchstabentasten, denen ein OP-Code zugeordnet ist.
Der Adreßteil mn der Befehle besteht aus zwei Teilen:
m ist die Spurnummer (6 Bit)
n ist die Zellennummer (6 Bit)
Logisch ist der Adreßraum zwar homogen (4096 Worte, 12 Bit-Adresse), der LGP-30 ist jedoch mit einem Magnettrommelspeicher ausgerüstet, der keinen Random Access Memory im ursprünglichen Wortsinn darstellt. Der Programmierer wurde durch die Zweiteilung der Adresse immer daran erinnert, die Variable, die zu dem betreffenden Befehl gehört, so zu legen, daß sie möglichst unmittelbar nach dem betreffenden Befehl unter dem Lesekopf liegt. Im schlechtesten Fall muß das Programm eine ganze Trommelumdrehung warten, bis die Variable gelesen werden kann.