Die ersten Computer sind menschlich, oft weiblich. Sie rechnen routiniert. Ihre Arbeitstische stehen in Grossraumbüros. Ihre Werkzeuge sind komplexe Tabellen und noch komplexere Rechenoperationen. Bald teilt man sie liebevoll ein: die im Zehnersystem denkenden Angestellten nennt man «decimal computists», die im Zweiersystem die «binary computers». «Computer» oder «Computists» – aus dem Englischen «to compute» für «berechnen» – sind die Männer und Frauen, die für das Militär oder die Industrie komplizierte und aufwendige Berechnungen ausführen.
Mit sauber errechneten Resultaten bestimmen sie die Flugbahnen von ballistischen Geschossen oder kalkulieren den Zerstörungsradius von Bomben. Sie sind Meister ihres Fachs, sie sind unverzichtbar, und sie sind zu langsam. Im donnernden Europa des Zweiten Weltkriegs nimmt die Komplexität der Waffensysteme zu. Flugbahnen von Granaten, U-Boot-Geschossen oder Artilleriefeuer zielsicher zu berechnen, ist eine hoch anspruchsvolle Aufgabe, für die aber immer weniger Zeit bleibt. Die Generäle auf den Schlachtfeldern brauchen die Daten in Echtzeit.
Menschliche Synapsen sind überfordert. Die Lösung sieht man in Maschinen. Seit der Industrialisierung erledigen sie alle erdenklichen Aufgaben effizient und in grossem Massstab. Warum sollen sie nicht auch rechnen? Die Militärforschung konzentriert sich auf die Entwicklung und den Bau von leistungsstarken Rechenmaschinen. Wer auf diesem Gebiet die Nase vorn hat – so die Überzeugung – kann Kriege für sich entscheiden.
Das Rennen um die Grossrechner hat begonnen. Mathematiker und Ingenieure in allen Teilen der Welt konstruieren Rechenmaschinen. Sie sind meist Angestellte von Universitäten, Wissenschaftler mit klarem Forschungsanspruch. Sie bleiben unter sich, die Länder sind untereinander schlecht vernetzt. Die Resultate verlassen kaum die eigene Institution. Es ist die Zeit vor der Computerwissenschaft, ihre Forschung wird in erster Linie getragen von den Rüstungs- und Elektronikindustrien. Viele Projekte sind hoch ambitioniert, bleiben jedoch in ihren Anfängen stecken oder werden während des Zweiten Weltkriegs zerstört.
Prominente Ausnahmen finden sich in Grossbritannien – der «Colossus» getaufte Grossrechner (1943/1944) findet Einsatz bei der britischen Post. Oder in den USA: Dort gilt der ENIAC (Electronic Numerical Integrator And Computer) von 1946 als erster eigentlicher Grossrechner. «Gross» im wörtlichen Sinn. Die physischen Ausmasse sind gigantisch. ENIAC besteht aus 17'468 Vakuumröhren zur Speicherung von Daten, 1500 Relais für den Stromfluss, frisst 174 Kilowatt Strom, misst zehn auf siebzehn Meter und wiegt dreissig Tonnen. Über 500'000 handgelötete Kontakte lassen die Daten fliessen.
Der Mathematiker Harry Reed stösst im Jahr 1950 zum ENIAC-Team und erinnert sich später: «Heute verstehen wir unter Personal Computer einen Rechner, den man mit sich herumträgt. Im ENIAC dagegen konnte man wohnen.» Wie aber waren diese ersten, schwerfälligen Grossrechner in der Lage, schneller zu rechnen als das menschliche Gehirn?
0 oder 1? – Wie der Computer rechnet
Ohne zu weit in die Geschichte zurückzugehen: Die vier Grundrechenoperationen Addition, Subtraktion, Multiplikation und Division sind Tausende von Jahre alt und lassen sich bis in die Antike und den alten Orient zurückverfolgen. Wegweisende Überlegungen für die Entwicklung der mechanisch-elektronischen Maschinen stammen aus der Feder des Philosophen und Mathematikers Gottfried Wilhelm Leibniz (1646–1716).
Im Jahr 1705 veröffentlicht er den Artikel «Explication de l’Arithmetique Binaire», in dem er beschreibt, wie sich Rechenprozesse für Maschinen einfacher als binäre Zahlencodierungen darstellen lassen, als mit dem herkömmlichen Dezimalsystem. Man kann – so Leibniz – mit solchen Binärzahlen rechnen wie mit «normalen» Zahlen.
Ein Beispiel:
Die Zahl 123 besteht in unserem Dezimalsystem aus 3 Einsern, 2 Zehnern und einem Hunderter, also 123 = 3 · 10^0 + 2 · 10^1 + 1 · 10^2.
Binär lässt sich 123 so darstellen: 123 = 1 · 1(2^0) + 1 · 2 (2^1) + 0 · 4 (2^2) + 1 · 8 (2^3) + 1 · 16 (2^4) + 1 · 32 (2^6) + 1 · 64 (2^8) oder 1101111
Was soll daran einfacher sein? Für das menschliche Gehirn mag das Dezimalsystem geeigneter sein, wenn auch mehr aus Gewohnheit – es geht wahrscheinlich auf unsere zehn Finger zurück. Wir hatten oben gesehen, dass Menschen durchaus in der Lage waren und heute noch sind, zahlen binär darzustellen und auch binär zu rechnen. Der Vorteil des binären Systems für die maschinelle Berechnung: Jede Zahl lässt sich durch ein kompaktes System aus lediglich zwei Zuständen ausführen.
Für eine mechanische oder elektrische Rechenmaschine braucht man lediglich zwei Zustände zu realisieren: AN oder AUS. Diese Überlegung bildet die Grundlage für sämtliche bis heute in Betrieb stehenden Computer – vom Server bis zum Smartphone. Und sie wird sich erst mit dem Quantencomputer ändern.
Dieses Prinzip – 0 oder 1, Signal oder kein Signal – bildet die Basis für die ersten programmierbaren Rechenmaschinen. Mehrere davon entwirft der englische Mathematiker Charles Babbage (1791–1871) bereits im 19. Jahrhundert. Sie sind allerdings so kompliziert, dass sie nie gebaut werden können. Die von ihm «analytical engine» genannte Rechenmaschine – um ein Beispiel zu nennen – sollte neunzehn Meter lang und drei Meter hoch sein, aus 55'000 Einzelteilen bestehen und von einer Dampfmaschine angetrieben werden – ein Monstrum.
Sein Konzept einer Maschine ist aus einem anderen Grund bemerkenswert. Unterstützung erhält Babbage nämlich von prominenter Seite: Augusta Ada Byron (1815–1852) – die Tochter des berühmten englischen Dichters Lord Byron – beschäftigt sich seit ihrer Jugend mit Mathematik. Mit sechzehn Jahren lernt sie Babbage kennen und entwickelt für seine Maschine ein komplexes Steuerungsprogramm zur Durchführung von Rechenoperationen. Damit geht sie als erste Programmiererin der Welt in die Geschichte ein; heute gibt sie der Programmiersprache «ADA» ihren Namen.
Wir springen hundert Jahre vorwärts: Am 30. November 1936 erscheint der wegweisende Artikel «On computable numbers» des englischen Mathematikers Alan Mathison Turing (1912–1954). Seine Ausführungen sind im Detail schwer verständlich. Vielleicht kann man es sich so merken: Die darin geschilderte sogenannte «Turingmaschine», ein theoretisches Modell, legt dar, dass es Aufgabenstellungen gibt, die mit Algorithmen nicht eindeutig lösbar sind.
Diese Annahme gilt bis heute in der theoretischen Informatik: Eine Aufgabe lässt sich genau dann eindeutig berechnen, wenn sie sich durch eine Turingmaschine bewältigen lässt.
Auf diesem theoretischen Fundament geht Turing weiter. Um die abgefangenen, geheimen Botschaften der deutschen Wehrmacht im Zweiten Weltkrieg zu entschlüsseln, entwirft er technische Verfahren zum tatsächlichen Bau eines Grossrechners. Ungefähr gleichzeitig erfindet der deutsche Bauingenieur Konrad Zuse (1910–1995) im Auftrag des deutschen Reichsluftfahrtministeriums in Berlin seit 1936 unterschiedliche Rechenanlagen. Von seinen Geräten überlebt lediglich die «Z4» getaufte Maschine den Krieg.
Die entworfenen Rechner der Vierzigerjahre basieren auf elektromechanischen Relais oder Elektronenröhren. Ihr Nachteil: Sie sind riesig, schwer, störanfällig und teuer. Die Steuerung der Maschine (Programmierung) wird durch das Stellen von Hunderten Schaltern und das Stecken von Kabelverbindungen möglich. Die Berechnung von komplexen Flugbahnen ist damit immer noch aufwendig bis unmöglich. Überhaupt: Die Modelle gelten als exotisch, ersonnen von genialen Mathematikern, und sind auch nur von diesen zu bedienen. Für die Praxis sind sie kaum tauglich. Im Kalten Krieg sollte sich dies ändern.
Lesen Sie morgen im 2. Teil: Der Weg zum modernen Computer: Daten, Speicher, Eingabe, Ausgabe.