2.1.1. Kurzer Abriss der Geschichte der Programmierung |
![]() |
Ein graphikfähiger und programmierbarer Taschenrechner wie der TI-85 gehört seit wenigen Jahren zu der Standartausstattung eines sächsischen Abiturienten. Auch einen PC nennt wohl heutzutage beinahe jeder Zweite sein Eigentum. Doch über die Entwicklung und Geschichte unserer heutigen Rechner weiss sicherlich nicht jeder Bescheid.
Mit einem Rechenschieber, wie ihn auch meine
Eltern noch in der Schule benutzten und dessen Ursprünge bis ins 17. Jahrhundert
zurückreichen, haben unsere Taschenrechner nur noch sehr wenig gemeinsam. Noch frühere
Formen von Rechenmaschinen wie z.B. der Abacus oder in der Antike verwendete
Rechenbretter, Rechentische oder Rechentücher sind erst recht nicht mehr in Verbindung zu
bringen mit dem TI-85.
Die Geschichte der Taschenrechner ist die Geschichte der Informatik, welche erst
wesentlich später begann, als die der Mathematik.
Der Beginn der Informatik war verknüpft mit der Suche des Menschen, nach einem System,
mit dem er große Datenmengen schnell verarbeiten und Berechnungen mit großer
Geschwindigkeit auf mechanische Weise ausführen konnte1.
Die Fähigkeiten der ersten wirklichen Rechenmaschinen,
welche selbständig Überträge von einer (Dezimal-) Stelle zur anderen vornehmen konnten,
beschränkte sich im wesentlichen auf die Berechnung der Grundrechenarten und hatte mit
Programmierung nur sehr wenig zu tun. Im Jahre 1623 konstruierte z.B. der Astronom Wilhelm
Schickard (1592-1635) eine Maschine, die ein sechsstelliges dezimales Addierwerk mit
Zehnerübertragung, sowie ein Multiplizierwerk besaß und alle vier Grundrechenarten
ausführen konnte. Sie blieb allerdings weitgehend unbeachtet und geriet schnell in
Vergessenheit. Aus diesem Grund galt auch lange der französische Mathematiker Blaise Pascal (1623-1662), der fast 20 Jahre
später, im Jahre 1641, eine Rechenmaschine entwickelte, mit der sich sechsstellige Zahlen
addieren ließen, als Erfinder der ersten Maschine dieser Art. Zur damaligen Zeit war
jedoch der Stand der Feinmechanik noch so gering, dass nicht ein zuverlässig arbeitendes
Exemplar von Pascals Machine, die nach ihrem Entwickler "Pascaline"
genannt wird, hergestellt werden konnte.
Auch der Deutsche Gottfried Wilhelm
Leibniz, der 1674 eine Vierspeziesrechenmaschine mit Staffelwalzen konstruierte, hatte
mit ähnlichen Schwierigkeiten zu kämpfen und der erhoffte Erfolg der Konstruktion blieb
damals aus.
Auch im 19. Jahrhundert war man technisch noch nicht wirklich soweit, um die
revolutionären Maschinen zuverlässig und ökonomisch vetretbar bauen zu können, die
damals beispielsweise der englische Mathematikprofessor Charles Babbage erfand. Die Idee seiner Maschine beruhte auf der
Berechnung der Differenzen zwischen Zahlen und demnach "Differenzmaschine"
genannt wurde. Diese "Analytical Engine" bestand aus fünf Grundbestandteilen,
die bis heute in elektronischen Rechenanlagen noch anzutreffen sind1:
Babbage sah für die Eingabe Lochkarten vor, welche 1801 von
dem Franzosen Jacquard in Form von Holzplättchen für die Steuerung von Webstühlen
entwickelt worden. Diese Karten sollten auch als Speicher und zur Ausgabe dienen. In
diesem Punkt bestand auch das Neue an Babbages Maschine: die Idee der Programmierbarkeit,
d.h. die Steuerung von Abläufen mit Hilfe verschiedener Programme. Bisher war diese
wesentliche Eigenschaft unserer heutigen Computer keiner Rechenmaschine beschert gewesen
und die Programme waren "fest eingebaut". Die Maschinen konnten also nur für
einen ganz bestimmten Zweck verwendet werden. Mit Hilfe der Lochkartentechnik erschlossen
sich damit erstmals neue Möglichkeiten. Doch auch Babbage scheiterte letztendlich an zu
komplizierten Feinmechanik der Maschine.
Ein weiterer wesentlicher Schritt zur programmgesteuerten Rechentechnik war die
"Statistikmaschine", die 1890 von Hermann Hollerith erfunden und für die 11.
amerikanische Volkszählung eingesetzt wurde.
Vier Jahre zuvor hatte Hollerith eine Lochkarte entwickelt, welche im Vergleich zu
Jacquards Variante wesentliche Neuerungen enthielt. Solche Lochkarten wurden dazu
verwendet, das Verhalten von Automaten zu Steuern.
Das wirkliche Computerzeitalter begann trotz aller vorherigen
Versuche erst in den 30er Jahren unseres Jahrhunderts. Und es war auch ein Deutscher, der
den Entscheidenten Fortschritt machte: Im Jahre 1934 hatte der Ingenieur Konrad Zuse (1910-1995) die richtungsweisende Idee anstatt
dem bisher verwendeten dezimalen Zahlensystem, das noch noch relativ unbekannte duale
Zahlensysem zum Rechnen in mechanischen Anlagen zu verwenden. Zuse hatte erkannt, dass
sich mit Hilfe von Relais die dualen Zustände 0 und 1 beschreiben ließen, was soviel wie
ein und aus bedeute. Anstatt der viel komplizierteren mechanischen Konstruktionen, die
notwendig waren um im dezimalen System 10 verschiedene Stellen zu besetzen und an denen
auch die Pioniere der Informatik wie Babbage gescheitert waren, versuchte man jetzt mit
Hilfe von Relais unter Verwendung des dualen Zahlensystems entsprechende elektronische
Rechenmaschinen zu bauen. Mitten im 2. Weltkrieg im Jahre 1941 wurde dann auch die erste
funktionsfähige programmgesteuerte elektromechanische Rechenmaschine von Zuse selbst
fertiggestellt und ging unter dem Namen "Relaisrechner"
(oder Z3) in die Geschichtsbücher der Informatik ein. Dem Rechner dienten
Lochstreifen als Eingabemedium.
Leider wurde dieser erste Relaisrechner 1944 durch einen Bombenangriff auf Berlin völlig
zerstört. Ein Jahr darauf stellete Zuse die Nachfolgemaschine, den Z4 der
Weltöffentlichkeit vor. Dieser von Zuse als "Babbage-Boolescher Typ"
charakterisierte Rechner (Z4) wendete das von Babbage erfundene Prinzip der
Programmsteuerung auf Boolesche Variablen an.
Weitere Errungenschaften von Konrad Zuse waren die Einführung des Gleitkommas und der
Gebrauch der logischen Grundoperation "Und", "Oder" und
"Nicht".
In den USA wurde zu der Zeit (1944) eine dem Z3 ähnlich
arbeitende Maschine entwickelt. Der "Mark 1", der zwar noch auf dem dezimalen
Zahlensystem beruhte, enthielt eine weitere wesentliche Neuerung: als Schalter wurden
erstmal aus der Radiotechnik bekannte Elektronenröhren eingesetzt, was die benötigte
Rechenzeit (Schaltzeit) im Gegensatz zum Relais auf ein Tausendstel herabsetzte.
Der erstmal 1946 gebaute Rechner mit dem Namen ENIAC
(Electronic Numerical Integrator and Calculator) bestand aus 18000 Elektronenröhren
und 1500 Relais und war in Bezug auf Leistungsfähigkeit den Zuse-Rechnern absolut
ebenbürdig. Im Gegensatz zu diesen benutzte man zur Programmspeicherung beim ENIAC
Streckbretter, welche damals in Telefonzentralen zur Handvermittlung verwendet wurden. Der
30 Tonnen schwere Großrechner, der entsprechend seiner Komplexität noch sehr
unzuverlässig arbeitete, erwies sich allerdings als Spezialrechner, der nur mit sehr
großen Aufwand umprogrammiert werden konnte.
Mit Hilfe von Elektronenröhren und Relais konnte man jetzt
Speicher bauen, in denen Zwischenergebnisse von komplexeren Berechnungen abgelegt werden
konnten. Damit war auch die Vorraussetzung für den letzten Schritt auf dem Weg zum
heutigen Rechner geschaffen:
Im Juni 1945 trat der aus Ungarn stammende Mathematiker John
von Neumann (1903-1957) der Projektierungsgruppe eines neuen Rechners bei. Während
der Arbeit am EDVAC (Electronic Discrete Variable Automatic Computer) kam ihm dann die
revolutionäre Idee, an die Stelle der starren Programmsteuerung eine interne
Programmsteuerung zu setzen. Der Programmablauf sollte codiert und im Speicher des
Rechners abgelegt werden. Das aus einer Folge von einzelnen Befehlen bestehende Programm
enthielt bedingte Befehle, die Vorwärts- und Rückwärtsverzweigungen ermöglichten.
Dieses Prinzip führte zu einer wesentlich schnelleren Arbeitsweise und
Programmausführung des Computers, da das Programm aus einem schnelleren Speicher als der
Lochkarte gelesen wurde. Daten und Zwischenergebniss konnten dort ebenfalls abgelegt
werden und der Maschine war es möglich jeden Programmbefehl selbst zu ändern.
Damit war die Voraussetzung für den heutigen Computer geschaffen und einer modernen
flexiblen und sequentiellen Datenverarbeitung stand nichts mehr im Weg. Der erste Computer
mit einem flexiblen Speicherprogramm wurde 1952 von von-Neumann entworfen und erhielt den
Namen "MANIAC 1".
Die Computerarchitektur, die von J. v. Neumann konzipiert wurde, versprach einen
geringen technischen Aufwand und universelle Anwendungsmöglichkeiten.
Demnach sollte ein Computer folgende Eigenschaften haben3:
Die von-Neumann-Architektur war somit der eigentliche
Ursprung der Programmierung im heutigen Sinne: das Programm als eine im Speicher abgelegte
Verknüpfung logischer Aussagen.
1 Zitat aus "Die faszinierende Welt der
Informatik, S. 8
2 vgl. "Vorlesungen zur Geschichte der Mathematik", S.301
3 vgl. "Taschenbuch der Informatik S.58