Die Geschichte der Computer

Vor dem Zeitalter der Elektronik war der Abakus dem Computer am nächsten, obwohl der Abakus eigentlich ein Taschenrechner ist, da er einen menschlichen Bediener erfordert. Computer hingegen führen Berechnungen automatisch durch, indem sie einer Reihe von eingebauten Befehlen folgen, die als Software bezeichnet werden.

In der 20th Jahrhundert ermöglichten technologische Durchbrüche den sich ständig weiterentwickelnden Rechenmaschinen, von denen wir heute so vollkommen abhängig sind, dass wir praktisch nie wieder darüber nachdenken. Aber schon vor dem Aufkommen von Mikroprozessoren und Supercomputern gab es einige bemerkenswerte Wissenschaftler und Erfinder, die den Grundstein für die Technologie legten, die seitdem jeden Aspekt des modernen Lebens drastisch verändert hat.

Die Sprache vor der Hardware

Die universelle Sprache, in der Computer Prozessoranweisungen ausführen, entstand im 17. Jahrhundert in Form des binären numerischen Systems. Das vom deutschen Philosophen und Mathematiker Gottfried Wilhelm Leibniz entwickelte System wurde entwickelt, um Dezimalzahlen mit nur zwei Ziffern darzustellen: der Zahl Null und der Zahl Eins. Leibniz 'System wurde zum Teil von philosophischen Erklärungen im klassischen chinesischen Text „I Ging“ inspiriert, die das Universum in Dualitäten wie Licht und Dunkelheit sowie Mann und Frau erklärten. Sein neu kodifiziertes System hatte zu dieser Zeit noch keinen praktischen Nutzen, aber Leibniz glaubte, dass eine Maschine eines Tages von diesen langen Folgen von Binärzahlen Gebrauch machen könnte.

Der englische Mathematiker George Boole führte 1847 eine neu entwickelte algebraische Sprache ein, die auf Leibniz 'Werk aufbaut. Seine "Boolesche Algebra" war eigentlich ein System der Logik, mit mathematischen Gleichungen zur Darstellung von Aussagen in der Logik. Ebenso wichtig war, dass ein binärer Ansatz verwendet wurde, bei dem die Beziehung zwischen verschiedenen mathematischen Größen entweder wahr oder falsch, 0 oder 1 ist. 

Wie bei Leibniz gab es zu dieser Zeit keine offensichtlichen Anwendungen für die Boolesche Algebra, jedoch erweiterte der Mathematiker Charles Sanders Pierce das System über Jahrzehnte und stellte 1886 fest, dass die Berechnungen mit elektrischen Schaltkreisen durchgeführt werden konnten. Infolgedessen würde die Boolesche Logik letztendlich eine wichtige Rolle beim Entwurf elektronischer Computer spielen.

Die frühesten Prozessoren

Dem englischen Mathematiker Charles Babbage wird zugeschrieben, die ersten mechanischen Computer zusammengebaut zu haben - zumindest technisch gesehen. Seine Maschinen aus dem frühen 19. Jahrhundert boten die Möglichkeit, Zahlen, Speicher und einen Prozessor einzugeben und die Ergebnisse auszugeben. Babbage nannte seinen ersten Versuch, die weltweit erste Rechenmaschine zu bauen, die "Differenz-Engine". Das Design sah eine Maschine vor, die Werte berechnet und die Ergebnisse automatisch auf einen Tisch druckt. Es sollte von Hand gekurbelt werden und hätte vier Tonnen gewogen. Aber Babbages Baby war ein kostspieliges Unterfangen. Mehr als £ 17.000 Pfund Sterling wurden für die frühe Entwicklung des Differenzmotors ausgegeben. Das Projekt wurde schließlich ausrangiert, nachdem die britische Regierung 1842 die Finanzierung von Babbage eingestellt hatte.

Dies zwang Babbage dazu, zu einer anderen Idee überzugehen, einer "analytischen Maschine", die einen ehrgeizigeren Umfang als ihr Vorgänger hatte und eher für allgemeine Zwecke als nur für das Rechnen verwendet werden sollte. Während er niemals in der Lage war, ein funktionierendes Gerät zu entwickeln, hatte Babbages Design im Wesentlichen die gleiche logische Struktur wie elektronische Computer, die in den 20er Jahren zum Einsatz kamenth Jahrhundert. Die Analyse-Engine verfügte über einen integrierten Speicher - eine Form der Informationsspeicherung, die in allen Computern vorhanden ist -, der eine Verzweigung ermöglicht, oder die Fähigkeit eines Computers, eine Reihe von Anweisungen auszuführen, die von der Standardreihenfolge abweichen, sowie Schleifen, die Sequenzen sind von Anweisungen, die wiederholt nacheinander ausgeführt werden. 

Trotz seines Versagens, eine voll funktionsfähige Rechenmaschine herzustellen, blieb Babbage bei der Verfolgung seiner Ideen unbeirrt. Zwischen 1847 und 1849 entwarf er Entwürfe für eine neue und verbesserte zweite Version seines Differenzmotors. Dieses Mal berechnete es Dezimalzahlen mit bis zu 30 Stellen, führte Berechnungen schneller durch und wurde vereinfacht, um weniger Teile zu benötigen. Dennoch hielt die britische Regierung die Investition nicht für wert. Der größte Fortschritt, den Babbage jemals an einem Prototyp gemacht hat, war die Fertigstellung von einem Siebtel seines ersten Entwurfs.

In dieser frühen Ära des Rechnens gab es einige bemerkenswerte Erfolge: Die von dem schottisch-irischen Mathematiker, Physiker und Ingenieur Sir William Thomson im Jahr 1872 erfundene Gezeitenvorhersagemaschine galt als der erste moderne analoge Computer. Vier Jahre später entwickelte sein älterer Bruder James Thomson ein Konzept für einen Computer, der mathematische Probleme löste, die als Differentialgleichungen bekannt sind. Er nannte sein Gerät eine „integrierende Maschine“ und in späteren Jahren sollte es als Grundlage für Systeme dienen, die als Differenzialanalysatoren bekannt sind. 1927 begann der amerikanische Wissenschaftler Vannevar Bush mit der Entwicklung der ersten Maschine, die als solche bezeichnet wurde, und veröffentlichte 1931 eine Beschreibung seiner neuen Erfindung in einer wissenschaftlichen Zeitschrift.

Morgendämmerung der modernen Computer

Bis Anfang 20th Jahrhundert war die Entwicklung des Computerwesens kaum mehr als die Entwicklung von Maschinen, mit denen verschiedene Arten von Berechnungen für verschiedene Zwecke effizient durchgeführt werden können. Erst 1936 wurde eine einheitliche Theorie aufgestellt, was einen "Universalcomputer" ausmacht und wie er funktionieren sollte. In diesem Jahr veröffentlichte der englische Mathematiker Alan Turing einen Aufsatz mit dem Titel "On Computable Numbers, with a Application to the Entscheidungsproblem", in dem dargelegt wurde, wie ein theoretisches Gerät namens "Turing machine" verwendet werden kann, um jede denkbare mathematische Berechnung durch Ausführen von Anweisungen durchzuführen . Theoretisch würde die Maschine über unbegrenzten Speicher verfügen, Daten lesen, Ergebnisse schreiben und ein Befehlsprogramm speichern.

Während Turings Computer ein abstraktes Konzept war, baute ein deutscher Ingenieur namens Konrad Zuse den ersten programmierbaren Computer der Welt. Sein erster Versuch, einen elektronischen Computer, den Z1, zu entwickeln, war ein binär angetriebener Taschenrechner, der Anweisungen von gestanzten 35-Millimeter-Filmen las. Die Technologie war jedoch unzuverlässig, weshalb er dem Z2 folgte, einem ähnlichen Gerät, das elektromechanische Relaisschaltungen verwendete. Während eine Verbesserung, es war in der Montage seines dritten Modells, dass alles für Zuse zusammenkam. Der 1941 vorgestellte Z3 war schneller, zuverlässiger und in der Lage, komplizierte Berechnungen durchzuführen. Der größte Unterschied bei dieser dritten Inkarnation bestand darin, dass die Anweisungen auf einem externen Band gespeichert waren, sodass sie als voll funktionsfähiges programmgesteuertes System funktionieren konnten. 

Das vielleicht Bemerkenswerteste ist, dass Zuse einen Großteil seiner Arbeit isoliert geleistet hat. Er hatte nicht gewusst, dass der Z3 "Turing complete" war, oder mit anderen Worten, in der Lage, jedes berechenbare mathematische Problem zu lösen - zumindest theoretisch. Er hatte auch keine Kenntnis von ähnlichen Projekten, die zur gleichen Zeit in anderen Teilen der Welt durchgeführt wurden.

Zu den bemerkenswertesten gehörte das von IBM finanzierte Harvard Mark I, das 1944 auf den Markt kam. Noch vielversprechender war jedoch die Entwicklung elektronischer Systeme wie der britische Computing-Prototyp Colossus von 1943 und das ENIAC, das erste voll funktionsfähige elektronische System Allzweckcomputer, der 1946 an der University of Pennsylvania in Dienst gestellt wurde.

Aus dem ENIAC-Projekt ging der nächste große Schritt in der Computertechnologie hervor. John Von Neumann, ein ungarischer Mathematiker, der sich in einem ENIAC-Projekt beraten hatte, würde die Grundlage für einen gespeicherten Programmcomputer legen. Bisher arbeiteten Computer mit festen Programmen und änderten deren Funktion, beispielsweise von der Durchführung von Berechnungen bis zur Textverarbeitung. Dies erforderte den zeitaufwändigen Prozess, sie manuell neu zu verdrahten und zu restrukturieren. (Die Neuprogrammierung von ENIAC dauerte mehrere Tage.) Turing hatte vorgeschlagen, dass sich der Computer idealerweise viel schneller ändern könnte, wenn ein Programm im Speicher gespeichert wäre. Von Neumann war von dem Konzept fasziniert und verfasste 1945 einen Bericht, der ausführlich eine realisierbare Architektur für die Berechnung gespeicherter Programme vorsah.   

Sein veröffentlichtes Papier würde unter konkurrierenden Forscherteams, die an verschiedenen Computerdesigns arbeiten, weit verbreitet sein. 1948 stellte eine Gruppe in England die Manchester Small-Scale Experimental Machine vor, den ersten Computer, auf dem ein auf der Von Neumann-Architektur basierendes gespeichertes Programm ausgeführt wurde. Der Manchester Machine mit dem Spitznamen "Baby" war ein experimenteller Computer, der als Vorgänger des Manchester Mark I diente. Der EDVAC, für den Von Neumanns Bericht ursprünglich vorgesehen war, wurde erst 1949 fertiggestellt.