Für die modernen Rechengeräte hat sich schlagwortartig die Bezeichnung Elektronische Rechenmaschinen“ eingebürgert. In diesem Zusammenhang treten uns Begriffe wie Elektronik, Speichertechnik, Programmsteuerung, Logistik, Dualsystem, gleitendes Komma und andere mehr entgegen, die alle eine gewichtige Rolle spielen. Das logisch wesentliche Merkmal ist aber - was nicht übersehen werden darf - die Programmsteuerung. Die Elektronik sorgt nur für die unvorstellbar hohe Geschwindigkeit.
Die Entwicklung der programmgesteuerten Rechengeräte kann man etwa in drei Abschnitte einteilen. Da ist zunächst eine Zeit des Tastens und Versuchens, die man als Vorgeschichte bezeichnen kann und die bis in die Zeit kurz vor dem zweiten Weltkrieg reicht; es folgt dann eine, teilweise durch gewisse Probleme der Kriegsführung intensivierte Entwicklung während des Krieges und schließlich die weltweite, mit größter Energie vorangetriebene Entwicklung seit dem Ende des Krieges, deren Ende noch nicht abzusehen ist.
Als ein Vorläufer auf dem Gebiet des Rechenmaschinenbaus, der bereits die Grundidee einer programmgesteuerten Rechenanlage hatte (1835), kann der Engländer Charles Babbage angesehen werden [1, 2]. Er arbeitete jahrzehntelang an dieser Idee, ohne sie jedoch infolge des damaligen Standes der Technik praktisch zum Tragen bringen zu können. Sein Name und seine Idee gerieten in Vergessenheit, und in den Jahren um 1930 gab es wohl kaum einen Rechenmaschinen-Fachmann, dem diese Idee der Programmsteuerung bekannt war. Gewisse Ansätze der Programmsteuerung lagen jedoch auch schon bei einigen Lochkartenmaschinen vor [3].
Die Anwendung des Dualsystems für Rechenmaschinen wurde ideenmäßig von zwei
Franzosen, L. Couffignal [4] und R. Valtat [5] vorbereitet. Schließlich verdient unter
den Vorläufern der Entwicklung noch der Engländer A. M. Turing [6] Erwähnung. Er
hatte sich bereits frühzeitig vom logischen
(Zeile fehlt im Original)
dem Ziel, eine praktisch einsetzbare Rechenmaschine zu bauen. Vielmehr benutzte er
die Idee der Rechenmaschine als Modell für seine theoretischen Studien in der
Anwendung der mathematischen Logik.
Die eigentliche Entwicklung programmgesteuerter Rechenmaschinen begann etwa im Jahre 1935, und zwar unabhängig voneinander in Deutschland und in den USA.
In Deutschland kam es zur Entwicklung einer Reihe von Geräten durch den Verfasser, die mit Z 1, Z 2, Z 3 und Z 4 bezeichnet wurden, sowie zweier Spezialmodelle. Eine weitere Entwicklung, und zwar elektronischer Art, erfolgte durch H. Schreyer in Zusammenarbeit mit dem Verfasser an der Technischen Hochschule in Berlin [7, 8]. Schließlich ist auch die Entwicklung von Dr. G. Dirks und Ing. G. Dirks zu erwähnen, die im wesentlichen auf dem Gebiet der elektronischen Buchungsmaschinen [33, 34] und der Magnetspeicherung [35, 36] schon frühzeitig Pionierarbeit leisteten. Leider bestand zwischen den beiden ersten Entwicklungen auf der einen Seite und der letzteren auf der anderen Seite keine Verbindung, so daß die Möglichkeiten, die in der Vereinigung aller deutschen Entwicklungen auf diesem Gebiet gelegen hätten, nicht ausgenutzt werden konnten.
Auch in den USA liefen mehrere Entwicklungen etwa gleichzeitig nebeneinander her, nämlich diejenigen elektromechanischer Art von H. H. Aiken und seinem Mitarbeiterstab [9] und den Bell Laboratorien [19] und schließlich die der ersten brauchbaren elektronischen Rechenmaschine von J. P. Eckert, J. W. Mauchly und H. H. Goldstine, die unter dem Namen ENIAC bekannt und 1946 in Betrieb genommen wurde [11].
Das erste programmgesteuerte Rechengerät, das in allen Teilen vollständig gearbeitet hat, war das deutsche Gerät Z 2 (1941). In den USA wurde als erstes der Harvard Mark I Computer in Betrieb genommen (1944).
Von den in Deutschland gebauten Spezialmodellen befand sich eines über zwei Jahre lang im täglichen Einsatz. Die deutschen Geräte wurden bis auf das bei Kriegsende annähernd fertiggestellte Gerät Z 4 durch Luftangriffe zerstört.
Diese Entwicklung sei nun insbesondere aus der Perspektive des Verfassers näher betrachtet und zwar einmal nach mathematischen und zum anderen nach konstruktiven Gesichtspunkten.
Befassen wir uns zunächst mit der Idee der Programmsteuerung, und zwar wie sie Babbage vorschwebte. Er zerlegte jede mathematische Formel in einzelne Elementargleichungen, die wir heute Plangleichungen nennen, etwa in der Form:
| V 1 + V 7 | = | V 6 |
| V 6 × V 5 | = | V 9 |
Als eine Art Programmsteuerung kann man auch die Schalttafeln (Panneau) der Lochkartengeräte auffassen. Im wesentlichen bestand jedoch die Programmierung lediglich darin, bestimmte Register mit bestimmten Spalten der abzufühlenden bzw. zu lochenden Karten für die Dauer der Rechnung fest miteinander zu verbinden, wobei auswechselbare Panneaus den verschiedenen Programmen entsprechen. Diese Art der Programmsteuerung ist heute noch bei vielen Lochkartengeräten üblich. Die Programmsteuerung von Babbage kommt somit der heute üblichen Form am nächsten.
Heute ist die Codierung von Befehlen in Form von Operations- und Adressenteilen üblich. Das erste Gerät, welches konsequent nach diesem Prinzip arbeitete, war das Gerät Z 3 (Bild 1).
|
Bei diesem werden die Befehle in codierter Form in einen Lochstreifen gestanzt und nacheinander in ein Befehlsregister gebracht, das sowohl das Rechenwerk als auch das Speicherwerk steuert. Die Entschlüsselung der Adressen erfolgt dabei über eine Wahlpyramide. Die Z 3 arbeitete noch nicht mit bedingten Befehlen, sondern mit sogenannten starren oder linearen Programmen.
Ein weiterer mathematischer Gesichtspunkt ist die Wahl des Zahlensystems. Die ersten
Maschinen, die in Deutschland gebaut wurden, arbeiteten nach dem reinen
Dualsystem. In den USA hat man meistens codierte Dezimalsysteme verwendet. Ein
weiterer Schritt in dieser Entwicklung war die Einführung des gleitenden Kommas,
wofür der Verfasser seinerzeit den Ausdruck halblogarithmische Form“ einführte [12].
Die voll-logarithmische Form erschien zwar für wissenschaftliche Rechnungen
erstrebenswert, da sich hiermit Multiplikationen und Divisionen elegant durchführen
ließen und auch das Potenzieren verhältnismäßig leicht
(Zeile fehlt im Original)
Erfassung eines großen Spielraums in der Größenordnung der Zahlen. Für die
bekannten dezimalen Additionslogarithmen läßt sich selbstverständlich leicht das duale
Analogon für die Logarithmen mit der Basis 2 finden. Die konstruktive Verwirklichung
dieser Idee stößt jedoch auf erhebliche Schwierigkeiten. Die Speicherung der
Additionslogarithmen erfordert erheblichen Aufwand, der mit der geforderten
Genauigkeit stark anwächst. Will man das vermeiden, so sind komplizierte
Interpolationen erforderlich, die den Zeitgewinn des logarithmischen Rechnens wieder
rückgängig machen [13].
Diese Schwierigkeiten lassen sich umgehen, wenn man von dem Logarithmus nur den ganzzahligen Teil, d. h. also die Stellen vor dem Komma (Exponent), und als Mantisse nicht die logarithmische Mantisse, sondern die reine Ziffernfolge der darzustellenden Zahl verwendet. Durch diese Einführung der halblogarithmischen Form“ wurden die vielen Vorteile des logarithmischen Rechnens erst für die Rechenmaschinen verwertbar.
Unter den mathematischen Gesichtspunkten ist noch die Anwendung der mathematischen Logik (Logistik) auf Probleme der Schaltungstechnik zu nennen. Auch diese Fragen wurden unabhängig voneinander in den USA [14] und Deutschland [15, 16] aufgegriffen. Diesbezügliche Arbeiten des Verfassers aus den Kriegsjahren blieben leider unveröffentlicht [17]. Heute ist die Schaltalgebra eine Wissenschaft für sich geworden und gehört zum täglichen Handwerkszeug der Rechenmaschinen-Konstrukteure.
Wie schon im Titel des Aufsatzes gesagt, reicht die konstruktive Entwicklung der programmgesteuerten Rechengeräte von der Mechanik zur Elektronik“. Die Modelle von Babbage waren rein mechanisch, ganz einfach aus dem Grunde, weil es vor hundert Jahren die Elektrotechnik im heutigen Sinne noch nicht gab. Babbage hielt sich an damals bekannte Konstruktionselemente, dezimale Rechenmaschinen mit Ziffernrädern u. dgl. Man kann sich vorstellen, welche Schwierigkeiten die Konstruktion des von ihm geplanten Speichers für 1000 Worte zu je 50 Dezimalstellen bereitete. Interessant ist, daß Babbage erstmalig die unverzögerte Durchschaltung des Stellenübertrages durch sämtliche 50 Dezimalstellen des Rechenwerkes einführte, eine Idee, die ebenso wie die seiner Programmsteuerung wieder vergessen und von der Rechenmaschinen-lndustrie nicht aufgegriffen wurde.
Vor der Entwicklung der modernen programmgesteuerten Rechengeräte waren Rechenmaschinen im wesentlichen mechanisch gebaut. Einige Versuche, Rechengeräte mit Relais zu bauen, waren zwar schon unternommen worden, hatten aber keine praktische Bedeutung erlangt. Lediglich bei Lochkartenmaschinen wurde der Vorteil der elektrischen Übertragungsmöglichkeit schon frühzeitig ausgenutzt. Das eigentliche Rechnen selbst erfolgte auch in diesen Geräten mechanisch.
Auch der Verfasser begann seine ersten Entwicklungen auf rein mechanischer Basis.
Das Ziel war dabei, ein mechanisches Analogon für das elektrische Relais zu
entwickeln. Hieraus entstand die mechanische Schaltgliedtechnik. Das Grundprinzip
besteht darin, daß mechanische Bleche in zueinander rechtwinkligen
(Zeile fehlt im Original)
Die Stellung der Bleche entspricht den zu verknüpfenden Ja-Nein-Werten einer
Schaltung. Dabei bewirkt bzw. verhindert ein Steuerblech die Übertragung von
Ja-Nein-Werten von einem Blech auf ein zweites durch mechanische Kupplung
|
In dieser Technik wurde das Modell Z 1 ausgeführt, welches ein vollständiges
(Zeile fehlt im Original)
Im Grundaufbau (Bild 3) sehen wir zwei Rechenwerke A und B. A dient der Verarbeitung des Exponenten, B der Verarbeitung der Mantisse. Die in mechanischer Schaltgliedtechnik aufgebauten Schaltungen entsprechen etwa den heutigen in der Relaistechnik üblichen Additionsschaltungen. Unten rechts ist die Eingabe- und Ausgabevorrichtung angedeutet. Die Eingabe erfolgt über eine vierstellige Dezimaltastatur DT mit Kommaeinstellung K. (Die Position des Kommas kann relativ zu der eingegebenen Gruppe von vier Dezimalziffern durch Verschieben frei eingestellt werden.) Die Ausgabe erfolgt über eine einfache
|
Besonders interessant ist vielleicht die Steuerung der einzelnen Operationen durch das Leitwerk L. Das Prinzip entspricht in etwa dem, was man heute als Mikroprogrammierung“ bezeichnen würde. In jedem einzelnen Spiel“ (entsprechend einer einzelnen Addition) sind dabei bestimmte Einstellungen an den Rechenwerken erforderlich, die von verschiedenen Bedingungen der jeweiligen Situation“ abhängen. Diese Situation wird durch drei Komponenten gekennzeichnet:
Diese werden an getrennte Organen eingestellt und fortgeschaltet. Im ganzen
ergeben sich neun Ja-Nein-Werte als Komponenten zur Kennzeichnung der
Operations Situation
(Zeile fehlt im Original)
zulösenden Einzelvorgänge (Übertragung von Werten, Starten von Ketten usw.)
ist nun ein Steuerblech zugeordnet, das genau in den Situationen anspricht, in
denen es in Funktion treten soll. Ein Beispiel zeigt Bild 4. Wir haben vertikale
Einstellbügel b1 - b9, welche den neun Ja-Nein-Werten der
Situationskennzeichnung entsprechen. Sie sind doppelt ausgeführt und
miteinander fest gekoppelt. In der Zeichnung ist die Situation LL, OOOL, OLO
eingestellt; das bedeutet: Teiloperation Nr. 3, Spiel Nr. 1 der Operation Nr. 2.
Ein Blech wird durch eine Feder zwecks Abfühlung der Situation nach rechts
verschoben und ist derart mit
|
Die mechanische Schaltgliedtechnik hat sich für den Aufbau von Rechenwerken
(Zeile fehlt im Original)
Mechanik bald natürliche Grenzen, die z. B. durch das Zusammenspiel verschiedener
Teile des Gerätes gegeben sind. Man kann nicht im beliebigen Maße um die Ecke
herum“ durch Gestänge u. dgl. Signale übertragen (Bild 5).
Dagegen ergab die Anwendung dieser Technik auf das Speicherwerk günstige Konstruktionen, die allerdings heute ebenfalls durch die moderne Magnetspeichertechnik überholt sind. Die Geräte Z 1, Z 2 und Z 4 waren mit mechanischen Speichern ausgerüstet. Das Grundprinzip der Speicherung besteht darin, daß schichtweise zwischen Glasplatten Speicherglieder in Matrixform angeordnet sind, wobei die gespeicherte Dualziffer in jedem einzelnen Falle durch die Lage eines Metallstiftes gekennzeichnet ist, der rechts oder links vor einer Nase liegt (Bild 6). Der Vorteil der Konstruktion liegt darin, daß sie aus verhältnismäßig
|
Der mechanische Speicher des Gerätes Z 4 ist aber noch nach dem Kriege (etwa acht Jahre) in Betrieb gewesen.
Nach dem Kriege wurden auch noch einige Versuche durchgeführt, die mechanische Schaltgliedtechnik auf Lochkartengeräte anzuwenden, erlangten jedoch angesichts der Entwicklung der wesentlich schnelleren elektronischen Bauelemente keine praktische Bedeutung und sind heute nur noch aus historischen Gründen erwähnenswert [18].
Sehr bald ergab sich die Notwendigkeit, für den Bau der Rechengeräte die
Möglichkeiten der Elektrotechnik auszunutzen. Dies erfolgte in zwei Richtungen. Von
H. Schreyer wurden elektronische Bauelemente entwickelt, die von vornherein für
Rechenmaschinen zugeschnitten waren [7, 8].
(Zeile fehlt im Original)
in drei Operationen des Aussagenkalküls auflösen lassen, und entwickelte
entsprechende elektronische Bauglieder für diese drei Operationen. Sie bauten auf dem
Zusammenspiel zwischen Röhre und Glimmlampe auf, wobei der Röhre die Funktion
der Wicklung eines elektromagnetischen Relais und der Glimmlampe die Funktion der
Kontakte zufällt. Als Speicherelemente dienten ebenfalls Glimmlampen, deren
gezündeter oder nicht gezündeter Zustand den Speicherinhalt darstellt. Die erreichte
Frequenz betrug etwa 10 kHz. Da es geplant war, hiernach Rechenmaschinen
nach dem Parallelprinzip zu bauen, konnte damit die Rechengeschwindigkeit
gegenüber Relaismaschinen etwa vertausendfacht werden. Die Entwicklung
führte zum Bau eines kleinen zehnstelligen dualen Rechenwerkes mit etwa 100
Röhren. Das Gerät wurde leider gegen Ende des Krieges durch Kriegseinwirkung
zerstört.
Die elektromechanischen Geräte Z 2 bis Z 4.
Die zweite Richtung schlug der Verfasser ein und verfolgte den Bau von Geräten, die mit den bekannten elektromechanischen Fernsprechrelais aufgebaut sind. Die inzwischen von ihm entwickelte Schaltalgebra, die im wesentlichen in der Anwendung des Aussagenkalküls besteht, gestattete es, ohne große Schwierigkeiten den logischen Aufbau der in mechanischer Schaltgliedtechnik entwickelten Geräte auf die Relaisgeräte zu übertragen.
Es wurde zunächst ein kleines Rechenwerk mit festem Komma gebaut (1939), das etwa 200 Relais enthielt. Dieses Rechenwerk, das die Bezeichnung Z 2 erhielt, wurde mit dem mechanischen Speicher des Gerätes Z 1 gekoppelt. Eine einfache Programmsteuerung mit Lochstreifen wurde angeschlossen. Es gelang mit diesem Gerät gewisse einfache Formeln durchzurechnen und das Prinzip der Programmsteuerung zu demonstrieren. Jedoch kam das Gerät für den praktischen Einsatz noch nicht in Frage.
Es folgte der Bau des Gerätes Z 3, das wegen seiner historischen Bedeutung etwas eingehender beschrieben werden soll.
Die Daten sind folgende:
| Programmsteuerung: | Lochstreifen (Normalfilm), Einadreßcode, je Befehl 8 Bits (wie bei Z 4). |
| Programmherstellung: | Handlocher |
| Rechenwerk: | rein dual, gleitendes Komma, Parallelrechenwerke
für Exponenten und Mantisse, Wortlänge: 22
Bits (Vorzeichen, sieben Exponentenstellen, 14
Mantissenstellen), eingebaute Operationen:
+, -, ×, :, , Multiplikation mit 2, 1/2, 10, 0.1, -1 |
| Übersetzung: | dezimal-dual, dual-dezimal, Steuerung der Operationen: Schrittschalter und Relaisketten. |
| Speicherwerk: | Relaisspeicher für 64 Worte. |
| Eingabe: | Tastatur, vier Dezimalen mit Kommaeinstellung. |
| Ausgabe: | Anzeige auf Lampenfeld, vier Dezimalen mit Komma-Anzeige. |
| Gesamtzahl der Relais: | 2600 |
| Bauzeit: | 1939 bis 1941 |
| Aufstellungsort: | Berlin, Methfesselstraße 7; |
| (Zeile Fehlt im Original) |
Bild 7 zeigt ein Blockschema des Zahlenkreislaufes. Das Gerät entsprach in seinem Aufbau im wesentlichen dem Gegenstand der Patentanmeldung, [12]. An seiner Finanzierung war die Deutsche Versuchsanstalt für Luftfahrt (DVL), Berlin-Adlershof, wesentlich beteiligt. Es sei hier der Name von Herrn Professor
LS = Lochstreifen, At = Abtaster, BR = Befehlsregister, OpW = Operationswähler, LW = Leitwerk, St = Steuerungsleitungen, SpW = Speicherwähler, Sp = Speicher, Ei = Eingabe, RA - Ausgabe, OpT = Operationstasten, ZT = Zifferntasten, KT = Kommatasten, ZL = Ziffernlampen, KL = Kommalampen, R = Rechenwerk, V = Vorzeichenwerk, A = Exponentenwerk, B = Mantissenwerk, Add 1, 2 = Additionswerke |
Das Gerät war 1945 soweit fertiggestellt, daß es einfache Programme rechnen
konnte. Es war das einzige von den während des Krieges gebauten Geräten, das
(Zeile fehlt im Original)
Die Historie dieses Gerätes ist eine abenteuerliche Geschichte. Es wurde später
weiter ausgebaut (Bild 8) und an die Eidgenössische Technische Hochschule,
Zürich, vermietet (1950 - 1955). Anschließend fand es Aufstellung im Institut
von Herrn Professor Dr.-Ing. H. Schardin, Laboratoire des Recherches, St.
Louis.
|
Neben diesen universalen programmgesteuerten Rechengeräten wurden während des
Krieges vom Verfasser zwei Spezialmodelle für Flügelvermessungen gebaut. Es
handelte sich dabei um folgende Aufgabenstellung:
Flügel und Leitwerk eines ferngesteuerten Flugkörpers wurden für jedes gefertigte
Modell an etwa 100 Meßstellen vermessen und die Abweichungen von der Soll-Form
auf einem Protokoll registriert. Durch eine längere Rechnung, die im wesentlichen in
Additionen, Subtraktionen und Multiplikationen mit Einflußwerten bestand, wurden
die zu erwartenden aerodynamischen Abweichungen des Flugkörpers ermittelt und
entsprechende Einstellungen der Flügel und des Leitwerkes vorgenommen. Für diese
Rechnungen waren sechs normale Vierspezies-Tischrechenmaschinen mehrschichtig
laufend im Einsatz. Der Verfasser baute nun ein Spezialmodell, welches das
Rechenprogramm automatisch durchführte, wobei lediglich die Werte des Protokolls
einzutasten waren.
Das Gerät arbeitete in Relaistechnik und besaß etwa 800 Relais. Die Programme waren auf Schrittschaltern fest verdrahtet und konnten lediglich durch Knopfdruck ausgelöst werden. Ebenso waren die konstanten Einflußwerte auf Schrittschaltern verdrahtet. Die Ablesung des Protokolls wurde durch ein Lampenfeld erleichtert, auf welches das Protokoll aufgelegt wurde. Die jeweils angeforderte Zahl wurde erleuchtet.
Dieses Gerät arbeitete etwa zwei Jahre lang bei den Henschel-Flugzeugwerken in mehrschichtigem Einsatz. Auch dieses Modell wurde durch Kriegseinwirkungen zerstört.
Ein verbessertes Modell mit erweiterter Aufgabenstellung wurde fertiggestellt,
(Zeile fehlt im Original)
wurden die Werte an den Meßuhren direkt abgetastet und auf die Rechenmaschine
übertragen [19]. Die Meßuhren wurden dabei durch ein Schrittschalterwerk abgefühlt,
und pro 1/100 Millimeter Abfühlweg wurde ein Impuls in das Rechenwerk gegeben.
Der Meßwert stand dann auf Schrittschaltern im Rechenwerk und konnte von dort aus
dual verschlüsselt ausgewertet werden.
Erwähnenswert ist ferner noch der während des Krieges erfolgte Bau eines kleinen logistischen Rechengerätes für Operationen des Aussagenkalküls [20]. Das Gerät konnte den Funktionsablauf einer aussagenlogischen Funktion mit fünf Variablen ausrechnen.
Neben dem Bau praktischer Modelle mögen folgende theoretische Arbeiten des Verfassers genannt sein, die im wesentlichen bis 1945 entstanden:
Ziel dieser Untersuchungen war es, das programmgesteuerte Rechnen über das Zahlenrechnen hinaus auf allgemein kombinatorische Rechenprozesse auszudehnen, z. B. auch auf das Problem der Programmfertigung“. Dem Verfasser schwebten hierbei vorwiegend arithmetische“ Rechengeräte einerseits und logistische“ Rechengeräte andererseits vor.
Ziel des Plankalküls war es, die theoretischen Voraussetzungen für die Formulierung derartiger allgemeinster Probleme zu schaffen. Pläne für nach diesen Prinzipien gebaute Rechengeräte blieben jedoch auf dem Papier. Die während des Krieges angefertigten Geräte waren bewußt ohne bedingte Befehle und damit ohne die dadurch gegebenen Möglichkeiten geplant, um erst einmal diese Stufe der Programmsteuerung sicher zu erreichen. Die verschiedenen Möglichkeiten bedingter Befehle, der Befehlsumrechnung usw. wurden lediglich im Plankalkül untersucht.
Nach Kriegsende wurden die Schranken für den Informationsaustausch zu beiden Seiten des Atlantiks geöffnet. Die in Europa und die in Amerika während des Krieges gebauten Geräte wurden bereits eingangs erwähnt. Die wesentlichen Unterschiede beider Entwicklungen seien hier nochmals tabellarisch gegenübergestellt:
| ||||||||||||||||
Vor allem ist hier das Serienprinzip zu erwähnen, das sich bald als sehr vorteilhaft für den Bau elektronischer Rechengeräte erwies. Es bietet die Möglichkeit, den an sich hohen konstruktiven Aufwand elektronischer Schaltungen durch deren höhere Geschwindigkeit auszugleichen, indem man Vorgänge, die bei elektromechanischen Geräten nebeneinander auf parallelen Schaltungsteilen ablaufen, bei elektronischen Geräten nacheinander in der gleichen Schaltung zur Ausführung bringt.
Es war das Verdienst John von Neumanns, als einer der ersten dieses Prinzip herausgestellt und mit allen Konsequenzen untersucht zu haben [22].
Die Möglichkeit der Verschlüsselung von Dezimalziffern wurde gründlich untersucht (Aiken-Code, Stibitz-Code). Das Rechnen mit Adressen im Verein mit bedingten Befehlen und gespeicherten Programmen wurde in den angelsächsischen Ländern in seinen Möglichkeiten untersucht und in einer Reihe von Rechengeräten verwirklicht. Hierdurch erhielten die Programme eine große Beweglichkeit.
Die Konstruktionselemente wurden auf breiter Basis studiert und in vielen Variationen verwendet. Erwähnt seien Ultraschall-, Kathodenstrahlröhren-, Magnettrommel- und Magnetkernspeicher.
Als etwa im Jahre 1949 in Deutschland die Entwicklung wieder aufgegriffen werden konnte, war es schwer, den Anschluß zu finden. Es seien hier aus den verschiedenen Arbeiten nur die Entwicklungen, an denen der Verfasser beteiligt war, herausgegriffen. Da die Elektronik um die damalige Zeit noch immer Unsicherheiten aufwies, wurden zunächst die Arbeiten an den Relaisgeräten fortgesetzt. Wie schon oben erwähnt, konnte aus dem Kriege als einziges Gerät die Z 4 gerettet werden, welche an der Eidgenössischen Technischen Hochschule in Zürich aufgestellt wurde. Die Ergänzungen bestanden in erster Linie in einem Lochstreifenwerk für Zahlen und im. Einbau von bedingten Befehlen (hauptsächlich bedingter Sprungbefehle).
Das Gerät Z 4 fand noch einen Nachfolger in dem Gerät Z 5, welches 1952 an die Optischen Werke Leitz in Wetzlar geliefert wurde (Bild 9). Auch die Z 5 ist ein Relaisgerät, das im Dualsystem und mit gleitendem Komma arbeitet. Sie besitzt eine sechsmal höhere Geschwindigkeit als die Z 4. Die bedingten Sprungbefehle wurden durch Rufbefehle ergänzt, so daß mit Hilfe der Bandsteuerung die einzelnen Bänder und daselbst beliebige Unterprogramme aufgerufen werden können.
Das Gerät Z 5 stellt gewissermaßen den Abschluß einer Entwicklungsreihe
von
(Zeile fehlt im Original)
ihre Bedeutung für die Konstruktion von Rechenmaschinen, obwohl schon die ersten,
wesentlich schnelleren elektronischen Maschinen gebaut wurden. Waren bisher nur
einzelne Exemplare bestimmter Gerätetypen entstanden, so begann jetzt die
serienmäßige Fertigung von z. T. kleineren Relaisgeräten.
|
Hierbei handelt es sich einmal um einen Rechenlocher, der für eine große Büromaschinenfirma gebaut und in etwa 25 Exemplaren ausgeliefert wurde und auch heute noch in Betrieb ist. Mit diesem Gerät konnte die zeit überbrückt werden, in der ein großer Bedarf an Rechenmaschinen auf diesem Sektor einsetzte, die
|
Als Ausgangspunkte dieses Gerätes sind einmal das im Kriege gebaute Spezialmodell des Verfassers und zum anderen das von Herrn Regierungsrat H. Seifers in München konstruierte Modell SM 1 anzusehen, das speziell für Zwecke der Flurbereinigung entwickelt worden war [23]. Seifers hat den Prototyp völlig selbständig und zunächst ohne Verbindung mit dem Verfasser gebaut. Das Gerät arbeitete anfangs rein dual, mit festem Komma und mit fest eingebauten Programmen (Schrittschaltersteuerung).
Seine größte Verbreitung hat das Gerät Z 11 im Vermessungswesen (Flurbereinigung, Landesvermessung, Stadtvermessung) gefunden. Aber auch in einer Reihe von optischen Firmen und in der Rentenberechnung hat es mit Erfolg Eingang gefunden. Im Vermessungswesen ist es deshalb so beliebt, weil die einzelnen Programme lediglich über Drucktasten ausgewählt zu werden brauchen. Die Anforderungen an die Programme wurden jedoch gerade durch den Einsatz in der Optik immer höher. Die Schrittschaltersteuerung erlaubt es zunächst, die einzelnen Programme an sich sehr beweglich zu gestalten. Die Steuerung besteht nämlich darin, daß von den einzelnen Kontaktbahnen der Schrittschalter Spannung an verschiedene Stellen des Gerätes gelegt wird (meistens Übertragungen auslösende Relais). Jeder derartige Mikrobefehl“ kann von beliebigen Bedingungen abhängig gemacht werden, indem er über beliebige Kontaktkombinationen innerhalb des Gerätes gelegt wird. In jedem Schritt der Drehwähler wird ein aus Mikrobefehlen zusammengesetzter Befehl ausgeführt. Jedoch müssen diese Befehle vor dem Bau in die Verdrahtungspläne aufgenommen werden.
Bald jedoch entstand das Bedürfnis, die Programme ändern zu können. Dazu wurde auch dieses Gerät mit einer Bandsteuerung versehen, wobei die Programme von vier Bändern in beliebiger Ordnung abgerufen werden können. Die Möglichkeit, Zahlen dual oder dezimal über Lochstreifen aus- und einzugeben, gibt dem Gerät weitere Beweglichkeit.
Inzwischen hatte das allgemeine Interesse an elektronischen Rechengeräten dazu geführt, daß einige deutsche Hochschul- und Forschungsinstitute die Entwicklung elektronischer Rechengeräte aufnahmen. Es ist hier nicht der Ort auf diese Entwicklungen einzugehen; die Arbeiten der Entwicklungsgruppen in Göttingen, München [24] und Darmstadt dürfen als bekannt vorausgesetzt werden (vgl. hierzu auch [25, 26]. Es mag eine gewisse Tragik darin liegen, daß eine einheitliche Linie aller deutschen Stellen, die im Angesicht der enormen Anstrengungen im Ausland unter den erschwerten NachkriegsverhäItnissen an diesem Problem arbeiteten, nicht erreicht werden konnte.
Für den Verfasser gab es auf Grund einfacher realer Umstände nur den Weg der Entwicklung industriell zu fertigender Geräte. Die hierbei geltenden Gesichtspunkte seien einmal zusammengestellt:
|
Diese Gesichtspunkte führten zur Konstruktion des programmgesteuerten Rechengerätes Z 22 (Bild 11) mit folgenden charakteristischen Merkmalen:
Um den logischen Aufbau des Gerätes entsprechend Punkt 4 (einfache Grundoperationen) zu besprechen, seien zunächst einmal einige grundsätzliche Gesichtspunkte betrachtet.
Die Theorie des Rechnens ergibt, daß sämtliche Rechenoperationen grundsätzlich in aussagenlogische Operationen mit Ja-Nein-Werten zerlegt werden können. Diese 3 Grundoperationen sind: Konjunktion, Disjunktion und Negation. Tatsächlich ist es prinzipiell möglich, Rechenmaschinen nach diesem Prinzip zu bauen, deren eigentliches Rechenwerk lediglich die aussagenlogischen Operationen ausführt, (z. B. das oben erwähnte einfache Rechengerät für Operationen des Aussagenkalküls).
Die Einfachheit des Aufbaues gilt aber im Rahmen einer programmgesteuerten Rechenmaschine nur für das Rechenwerk. Das Speicherwerk selbst ist zwar ebenfalls insofern einfach, als jede Speicherzelle“, d. h. jede geschlossen aufzurufende Einheit lediglich einen einzigen Ja-Nein-Wert zu speichern hat. Die Auswahleinrichtungen sind aber sehr umfangreich, da ja jeder einzelne Ja-Nein-Wert für sich ansprechbar sein muß. Ebenso sind die Programme sehr umfangreich, da sämtliche Operationen - selbst einfache Additionen - in ihre kleinsten rechnerischen Grundoperationen mit Ja-Nein-Werten aufgelöst werden müssen. Diesem Extrem mit dem einfachsten logischen Rechenwerk steht die andere Lösung gegenüber mit einem Rechenwerk, bei welchem die arithmetischen Grundoperationen eventuell mit gleitendem Komma fest verdrahtet sind. Nach diesem Prinzip wurden ja zunächst fast alle programmgesteuerten Rechenmaschinen gebaut. Die mit der Geräteserie Z 1 bis Z 5 gemachten Erfahrungen zeigen, daß derartige Rechenwerke recht komplizierte interne Schaltungen erfordern. Besonders das gleitende Komma stellt hohe Anforderungen. Mit Hilfe der Relaistechnik ist es verhältnismäßig leicht, derartige Schaltungen aufzubauen, da das Relais ein ideales Mittel zum Aufbau von Schaltungen aus logisch-mathematischen Ansätzen darstellt. Ein Relais greift mit einer Vielzahl von Kontakten in viele Stromkreise ein, und die Verknüpfungen bedürfen keiner verstärkenden Elemente, was bei Röhren nicht der Fall ist. Die direkte Übertragung solcher Schaltungen in eine elektronische Technik ist zwar oft durchgeführt worden, erfordert aber erheblichen Aufwand.
Auf die Frage, ob es nun einen vernünftigen Mittelweg zwischen dem Rechenwerk mit elementaren aussagenlogischen Operationen und der vollausgebauten Mehrspeziesmaschine gibt, bieten sich auf Grund der Untersuchungen zahlreiche Möglichkeiten an. Als besonders vorteilhaft darf wohl folgende Lösung gelten:
Die Komplementbildung besteht in der (aussagenlogischen) Umkehrung, d. h. in
der
(Zeile fehlt im Original)
Subtraktion lösbar. Die Links- und Rechtsverschiebung ist bei Auffassung
des Wortes als Dualzahl identisch mit Verdoppelung bzw. Halbierung der
Zahl.
Die Intersektion ist aussagenlogisch gleichbedeutend mit der Bildung der Konjunktion zwischen je zwei Ja-Nein-Werten zweier Worte, welche der gleichen Stelle zugeordnet sind. Hiermit ist es möglich, aus einem gegebenen Wort entsprechend einer in einem anderen Wort gegebenen Anweisung einen Teil herauszuschneiden und getrennt zu verarbeiten. Ist z. B. das Wort bedeutungsmäßig aufgeteilt in Vorzeichen, Exponent und Mantisse (Zahl im gleitenden Komma), so kann der Exponent zur getrennten Verarbeitung aus dem vollen Wort herausgeschnitten werden, indem man die Operation der Intersektion mit einer Konstanten durchführt, welche in den Stellen, die den Exponenten zugeordnet sind, eine Eins aufweist und in allen anderen Stellen eine Null.
Damit wäre für die Konstruktion des Rechenwerkes eine günstige Lösung gefunden. Es sei nun auf die grundsätzlichen Gesichtspunkte bei der Programmierung eingegangen. Die Entwicklung der Programmsteuerung sei in diesem Zusammenhang, beginnend mit der Stufe der linearen Programme, wie folgt gezeichnet:
2. Beeinflussung des Programmablaufes durch die Rechnung:
Die Stufen 1a sowie 2a und 2b lassen sich noch gut mit sogenannten Bandsteuerungen
erreichen. Bei den Stufen 1b, 1c und 2c tritt allerdings schon ein Nachteil
des Bandes in Erscheinung, da das bedingte Heranführen eines gerufenen
Programmteiles unter Umständen den blinden Durchlauf längerer Bandteile
erfordert. Hier setzt der Vorteil der Programmspeicherung ein, da das Aufsuchen
beliebiger Programmteile nur an die Zugriffszeit des Speichers gebunden ist.
Hiermit hängt nun eng das Umrechnen der Adressen entsprechend Stufe 4
zusammen, das einmal dazu dienen kann, die Indizes von Variablen abzuzählen
(n-stellige Vektoren bzw. m
n-stellige Matrix) oder das Zusammenspiel beliebiger
Unterprogramme beliebig frei zu gestalten, indem die Frage der Auswahl
des nächsten Programmteiles zum Gegenstand der Rechnung selbst gemacht
wird.
Bei der Entwicklung von Geräten in dieser Stufenfolge wurden zunächst Geräte
entworfen und gebaut, welche für das Anzeigen und Umrechnen der Programme
eigene Einrichtungen besitzen (Programmspeicher, Indexregister, Indexzähler
usw.). Es zeigte sich jedoch bald, daß derartige Programmumrechnungen
vorteilhaft mit dem gleichen Rechenwerk durchgeführt werden, in dem die
eigentliche Informationsverarbeitung erfolgt. Ebenso ist es vorteilhaft, die
normalen Informationseinheiten (Zahlen) strukturmäßig den Befehlen anzupassen
und ein Wort wahlweise einmal die eine und einmal die andere Bedeutung
annehmen
(Zeile fehlt im Original)
tionsarten logisch nicht mehr erforderlich. Im Gegenteil, es ergibt sich eine wesentlich
höhere Beweglichkeit in der Programmierung, wenn beide Informationsarten im
gleichen Speicher behandelt werden.
Damit sind gewisse logische Grundsätze für den Bau einfacher, aber sehr universeller Geräte gegeben. Gedankengänge dieser Art führten an mehreren Stellen zu Entwürfen und teilweise praktischen Ausführungen von Modellen [27, 28].
Insbesondere ausgehend von dem Projekt der MINIMA entstand über einige Zwischenentwürfe das Blockschema der Z 22 (Bild 12), wobei wesentliche Ergänzungen gegenüber dem eigentlichen MINIMA-Projekt eingebaut wurden.
|
Als Hauptspeicher ist ein Trommelspeicher und als Schnellspeicher ein Ferritkernspeicher vorgesehen. Das Rechenwerk kann, wie oben erwähnt, die Operationen +, -, Verschieben, Intersektion durchführen. Ein wesentliches Merkmal im Aufbau des Befehlscodes sind die funktionellen Bits“. Diesen sind (ohne Entschlüsselung) bestimmte Stromtore des Gerätes direkt zugeordnet, welche die Übertragungswege von Informationen freigeben oder sperren. Jedes Bit ist mit einem großen lateinischen Buchstaben benannt, so daß der Operationsteil des Befehls durch eine Aneinanderreihung solcher Buchstaben angegeben wird.
So bewirkt z. B. E“ die Übertragung eines Wortes vom Speicher in das Befehlsregister, A“ die Übertragung eines Wortes in den Akkumulator. Der Adressenteil des Befehls besteht aus einer Trommeladresse mit 13 Bits und einer Schnellspeicheradresse mit 5 Bits. Das Programmwerk besteht aus einem Befehlsregister, einem Steuerregister und einem Befehlszählregister. In das Befehlsregister läuft jeweils derjenige Befehl ein, der in der nächsten Wortzeit ausgeführt werden soll. Nachdem der Befehl eingelaufen ist wird er vom Befehlsregister auf das Befehlssteuerregister übertragen, von wo für die Dauer der nächsten Wortzeit die kommandierenden Einstellungen im Gesamtgerät vorgenommen werden. Besondere Vorsorge ist für das Durchzählen der Befehlsadressen bei linearen Programmen getroffen. Da von der Trommel durch die gleichen Übertragungs- und Auswahlorganisationen sowohl die Befehle als auch die durch die Befehle zu verarbeitenden Informationen laufen, wird bei linearen Programmen im allgemeinen abwechselnd ein Befehl und eine Zahl übertragen. Das Übertragen der Befehle auf das Befehlsregister ist jedoch wiederum die Wirkung von Abrufbefehlen“, deren Adresse von Befehl zu Befehl um eins weiterzählen muß. Normalerweise benutzt man hierfür besondere Adressenregister mit Zähleinrichtungen.
Bei der Z 22 ist die Organisation jedoch so getroffen, daß der volle Abrufbefehl in der Zwischenwortzeit über ein Halbaddierwerk in ein Befehlszählregister übertragen wird, wobei die Trommeladresse um eins erhöht wird. Vom Befehlszählregister läuft er dann in der nächsten Wortzeit wieder im Kreislauf in das Befehlsregister. Der Vorteil gegenüber einfachen Adressenzählregistern besteht darin, daß der vollständige Befehlstext einen Kreislauf ausführt und in geänderter Form wieder in das Befehlsregister gelangt. Wenn auch im allgemeinen die Änderung des Befehls lediglich in der Erhöhung der Adresse besteht, so kann doch der Umstand, daß der gesamte Befehl über das Befehlsregister läuft, dahingehend ausgenutzt werden, daß auch der Abrufbefehl eine oder mehrere Mikrooperationen auslösen kann.
Die Bedingungsorganisation ist so getroffen, daß bestimmte Schnellspeicher abhängig von zwei Befehlsbits P, Q die Ausführung des Befehls unterbinden oder freigeben. Die Schnellspeicher selbst werden einmal im Rahmen arithmetischer Operationen als Rechenwerksregister benutzt (Operanden, Multiplikator usw.) und dienen zum anderen in der Programmsteuerung als Indexregister.
Es ist noch besondere Vorsorge getroffen, daß Adressen leicht umgerechnet werden
können. So kann durch ein Befehlsbit C der Adressenteil des Befehlsregisters
direkt in den Akkumulator übertragen werden. Ferner sind drei Arten von
Adressenumrechnungen mit je einem Befehl möglich. (G-Befehle; die Anregung hierzu
gab Herr Dr. F. R. Güntsch, seinerzeit Technische Universität Berlin). Durch diese
Operation wird die Beweglichkeit des Gerätes erheblich gesteigert.
(Zeile fehlt im Original)
sprüngliche Ziel hinaus, mit elementaren Operationen ein universelles Gerät zu
bauen.
Die Grundprogramme bestehen aus dem Leseprogramm, arithmetischen Programmen und dem Druckprogramm. Sie beanspruchen zusammen etwa 1000 Befehle. Grundsätzlich kann jeder Benutzer sein eigenes Grundprogramm aufbauen. Jedoch bedeutet die Entwicklung eines Grundprogrammes eine erhebliche Arbeit, so daß von dieser Möglichkeit kaum Gebrauch gemacht wird. Das im allgemeinen benutzte Grundprogramm wird mit dem Namen Freiburger Code“ bezeichnet.
Es seien hier noch als Förderer der Idee dieses Gerätes die Namen von Herrn Prof. Dr. H. Görtler, Universität Freiburg/Br., Prof. Dr. W. Haak, Technische Universität Berlin, und Prof. Dr. H. Cremer, Technische Hochschule Aachen, genannt. Diese drei Hochschulen erhielten dann auch die ersten Geräte. Heute ist das Gerät bei einer Reihe von Hochschulen und Forschungsstellen eingesetzt. Es hat aber auch in der Industrie und im Vermessungswesen Eingang gefunden.
Das Aufkommen der Transistoren und deren mittlerweile preiswerte Gestaltung hat auch in der Weiterentwicklung des Elektronenrechners Z 22 einen Niederschlag gefunden. Durch Verwendung dieser vorteilhaften Halbleiterelemente in Verbindung mit gedruckten Steckschaltungen entstanden daraus zwei neue Typen von Rechenanlagen, nämlich die Geräte Z 23 und Z 31.
Die zur Verwendung in Wissenschaft, Industrietechnik und Behörden bestimmte volltransistorisierte Rechenanlage Z 23 lehnt sich in ihrem logischen Aufbau an die bewährte Befehlsstruktur der Z 22 an und wurde hinsichtlich der Programmierungsmöglichkeiten wesentlich verbessert. Sie arbeitet im Binärsystem nach dem Serienprinzip. Die Leistungsfähigkeit wurde gegenüber ihrer Vorgängerin erheblich gesteigert. So beträgt das Fassungsvermögen der Magnetspeichertrommel 8192 Worte, das Wort zu 40 Binärstellen (entsprechend etwa 11 Dezimalstellen) gerechnet, bei beliebiger Zahlendarstellung mit gleitendem oder festem Komma. Der Ferritkern-Schnellspeicher wurde sogar um mehr als das Zehnfache vergrößert und faßt 240 Worte. In Verbindung mit einer erheblich gesteigerten Ein- und Ausgabegeschwindigkeit und dem Übergang vom Zweitakt- zum Eintaktverfahren im Befehlskreislauf ergibt sich eine dreimal größere Rechengeschwindigkeit gegenüber der Z 22.
Die Rechenzeiten betragen
| mit festem Komma | mit gleitendem Komma | |
| für die Addition | 0,3 ms | 10,6 ms |
| für die Multiplikation | ||
| und Division | 13 ms | 20 ms |
Für vorwiegend kommerzielle Anwendungen ist die volltransistorisierte Rechenanlage Z
31 gedacht. Sie arbeitet im Gegensatz zur Z 22 und Z 23 im Dezimalsystem, da es bei
kaufmännischem Einsatz besonders auf hohe Ein- und Ausgabegeschwindigkeit
ankommt. Bei einer Wort- bzw. Zahlenlänge von zehn Dezimalstellen plus einer
Vorzeichenstelle, die außerdem noch zur Unterscheidung von zahlen, Befehlen und
Klartext dient, betragen die Rechenzeiten
| mit festem Komma | |
| für die Addition und Subtraktion | 0,4 ms |
| für die Multiplikation | 28 ms (im Mittel) |
| für die Division | 38 ms (im Mittel) |
Das Rechenwerk enthält zwei Akkumulatoren mit Verschiebemöglichkeit, denen zwei Addierwerke und ein Komplementwerk zugeordnet sind, zwei Zählregister sowie Einrichtungen zum Testen und Vergleichen. Es können auch logische Operationen, und zwar gleichzeitig mit arithmetischen Arbeiten, sowie Rechnungen mit mehrfacher Zahlenlänge ausgeführt werden.
Die Befehlsstruktur ist, soweit das bei einem dezimalen Rechner vertretbar erscheint, nach ähnlichem analytischen Prinzip wie bei den vorgenannten Rechenanlagen aufgebaut und gewährleistet eine große Beweglichkeit in der Programmierung, wodurch sich die Anlage dank einer durch Sicherheitscode und entsprechende Kontrollen ermöglichte hohe Rechensicherheit auch gut für wissenschaftlich- technische Probleme eignet.
Kennzeichnend für die Z 31 ist das Baukastenprinzip. Die Anlage kann je nach Bedarf den Erfordernissen des Benutzers durch Zusatzgeräte beliebig (und fast unbegrenzt) angepaßt werden. So kann z. B. die Speicherkapazität des Arbeitsspeichers von 200 bis auf 9800 Worte variiert werden. Speichererweiterungen sind durch Anschluß weiterer Magnetspeichertrommeln, Kernspeichersätze und Magnetbandeinheiten möglich. Ferner können Lochkarten- und Lochstreifengeräte, Schreibmaschinen, Drucker sowie Spezialgeräte (z. B. Zeichentische) angeschlossen werden.
Erwähnenswert ist abschließend vielleicht noch das Konzept einer Feldrechenmaschine [29, 30], das zwar zunächst noch nicht zum Bau eines Gerätes geführt hat, im Rahmen dieser Zusammenstellung aber kurz erwähnt werden soll, zumal ähnliche Überlegungen in jüngster Zeit auch an anderen Orten erwogen werden [31, 32].
Angeregt wurde der Verfasser hierzu durch Diskussionen über das Problem der Wetterrechnung. Die hierbei zu lösenden partiellen Differentialgleichungen lassen sich mit Feldern von Gitterpunkten lösen. Der Grundgedanke ist kurz der, ganze derartige Felder als Operanden zu verwenden und Operationen zwischen diesen zu definieren. Als solche kommen Feldadditionen, Feldmultiplikationen, Verschiebung des ganzen Feldes in Zeilen- und Spaltenrichtung und dergleichen in Frage. Konstruktiv läßt sich für diese Zwecke der verhältnismäßig wirtschaftliche Trommelspeicher gut einsetzen. Die Felder sind in passender Reihenfolge auf dem Umfang der Trommel gespeichert, so daß bei einer Trommelumdrehung ein komplettes Feld an den Lese- und Schreibköpfen vorbeiläuft. In passendem Zusammenspiel mit dem Rechenwerk lassen sich dadurch sehr günstige Zeiten für die Feldoperationen erzielen.
In der in obiger Betrachtung gegebenen Reihe von Geräten:
stellt dieses Gerät eine weitere Stufe dar, bei der die Operanden Felder von Werten darstellen.
Im Rahmen einer Abhandlung über digitale Informationswandler verdienen noch zwei
ebenfalls transistorisierte Geräte hier erwähnt zu werden, die unabhängig
(Zeile fehlt im Original)
in Lochstreifen gestanzte Informationen des Rechners in Analogform als Kurven
aufzeichnen. Es handelt sich hierbei einmal um das elektronische Planimeter Z 80 und
zum anderen um den lochstreifen- bzw. lochkartengesteuerten Zeichentisch Graphomat
Z 64. Beide Geräte sind für Anwendungen gedacht, bei denen es auf höhere Präzision
ankommt.