18 großartige Erfindungen in der Welt der Computer und Programmierung

Vor kurzem hatten meine Kollegen und ich eine Diskussion zum Thema der ersten Computer und Programme. Das Gespräch erinnerte nicht nur an berühmte Gelehrte wie Charles Babbage, sondern auch an weniger bekannte wie Ada Lovelace. Infolgedessen entstand die Idee, eine Studie durchzuführen und eine Chronologie der Geschichte von Computern und Programmierung zu erstellen.

Bei der Untersuchung verschiedener Quellen wurden viele interessante Fakten entdeckt. Zum Beispiel ist Babbage technisch gesehen nicht der Erfinder des Computers, da die erste Programmiersprache auf hoher Ebene überhaupt nicht FORTRAN war und Stifte für CRT-Monitore verwendet wurden.



1. Der erste Computer: "Die Maschine der Unterschiede" (1821)


Vorläufer der Analytical Engine. Die Differenzmaschine war der erste Versuch, einen mechanischen Computer zu erstellen. Das Projekt wurde vom Wissenschaftler Charles Babbage entwickelt. Mit Unterstützung der britischen Regierung begann er an dem Gerät zu arbeiten. Aufgrund der hohen Kosten wurde die Finanzierung eingestellt und der Computer nie gebaut.



2. Der erste Allzweckcomputer: "Analytische Maschine" (1834)


Charles Babbage setzte seine Arbeit fort und machte sich aufgrund seiner Erfahrung an die Entwicklung eines mechanischen Computers. Diese Maschine sollte Berechnungen automatisieren, indem Funktionen durch Polynome approximiert und endliche Differenzen berechnet werden. Aufgrund der Möglichkeit einer ungefähren Darstellung von Logarithmen und trigonometrischen Funktionen in den Polynomen könnte die „Analysemaschine“ ein universelles Gerät sein.



3. Das erste Computerprogramm: ein Algorithmus zur Berechnung der Bernoulli-Zahl (1841 - 1842)


Die Mathematikerin Ada Lovelace begann mit der Übersetzung der Berichte ihrer italienischen Kollegin, der Mathematikerin Luigi Menabrea. Zu diesem Zweck verwendete sie 1841 dieselbe Babbage-Analysemaschine. Während der Übersetzung interessierte sich die Frau für den Computer und hinterließ Notizen. Eine der Notizen enthielt einen Algorithmus zur Berechnung der Bernoulli-Zahl (eine Folge von rationalen Zahlen B 1 , B 2 , B 3 ) durch eine Analysemaschine, die nach Ansicht von Experten das allererste Computerprogramm war.



4. Der erste funktionierende Computer: Z3 Konrad Zuse (1941).


Der deutsche Erfinder Konrad Zuse hat als erster einen funktionierenden Z3-Computer entwickelt. Basierend auf seinen ersten beiden Modellen Z1 und Z2 baute der Wissenschaftler einen vollwertigen elektromagnetischen Programmiercomputer auf Basis elektronischer Relais zusammen. Z3 hatte ein Binärsystem, Gleitkommazahlen, ein Rechengerät mit zwei 22-Bit-Registern, die über 8-Kanal-Bänder gesteuert wurden.

Es wurde angenommen, dass dies ein geheimes Projekt der Bundesregierung sein würde. Es wurde größtenteils für das Aviation Research Institute entwickelt. Zwar war Tsuza selbst wenig an den Interessen des Militärs interessiert, er wollte nur einen funktionierenden Computer schaffen.

Der ursprüngliche Z3 wurde 1943 bei der Bombardierung Berlins zerstört.



5. Der erste elektronische Computer: Atanasoff-Berry-Computer (Atanasoff-Berry-Computer, ABC, 1942)



Das erste digitale Computergerät ohne bewegliche Teile. Der Computer wurde von John Vincent Atanasov und Clifford Berry erstellt. ABC wurde verwendet, um Lösungen für simultane lineare Gleichungen zu finden. Es war der erste Computer, der ein zweiteiliges Set zur Darstellung von Daten und elektronischen Schaltern anstelle von mechanischen verwendete. Der Computer war jedoch nicht programmierbar. ABC führte zunächst modernere Elemente wie binäre Arithmetik und Trigger ein. Der Nachteil des Geräts war seine Spezialisierung und Unfähigkeit, Berechnungen aufgrund des Fehlens eines gespeicherten Programms zu ändern.



6. Der erste programmierbare elektronische Computer: "Colossus" (1943)


Der Colossus-Computer ist eine geheime Entwicklung aus dem Zweiten Weltkrieg. Es wurde von Tommy Flowers in Zusammenarbeit mit der Max Newman-Niederlassung mit dem Ziel erstellt, den Briten bei der Entschlüsselung abgefangener Nazi-Nachrichten zu helfen. Sie wurden mit der Lorentz-Chiffre verschlüsselt. Die Aktionen wurden mit elektronischen Schaltern und Steckern programmiert. "Colossus" gab Zeit, um Nachrichten von mehreren Stunden bis Wochen zu entschlüsseln. Mit einem Computer wurden viele faschistische Verschlüsselungen entschlüsselt.



7. Erster programmierbarer elektronischer Universalcomputer: ENIAC (1946)


ENIAC (Electronic Numerical Integrator and Calculator) ist der erste elektronische Allzweck-Digitalcomputer mit der Möglichkeit der Neuprogrammierung zur Lösung einer Vielzahl von Problemen. ENIAC wurde von der US-Armee finanziert und von der Moore School of Engineering an der University of Pennsylvania entwickelt. Es wurde von einem Team von Wissenschaftlern unter der Leitung von John Presper Eckert und John William Mockley erstellt. ENIAC war 150 Fuß breit und konnte für komplexe Operationen programmiert werden. Die Berechnungen wurden im Dezimalsystem durchgeführt, wobei der Computer mit Zahlen mit einer maximalen Länge von 20 Stellen betrieben wurde.

Eine interessante Tatsache war, dass es mehrere Tage dauerte, um eine Aufgabe auf ENIAC zu programmieren, aber eine Lösung wurde innerhalb weniger Minuten herausgegeben. Beim Umschalten "verwandelte" sich ENIAC in einen fast neuen Spezialcomputer zur Lösung spezifischer Probleme.



8. Der erste Trackball (1946/1952)


Trackball ist ein Zeigegerät zur Eingabe von Informationen über die Relativbewegung eines Computers. In der Tat ein Analogon einer modernen Computermaus. Einer Version zufolge wurde es von Ralph Benjamin entwickelt, als er an einem Überwachungssystem für ein niedrig fliegendes Flugzeug arbeitete. Die Erfindung, die er beschrieb, enthielt eine Kugel zum Steuern der XY-Koordinaten des Cursors auf dem Bildschirm. Das Design wurde 1947 patentiert, aber nicht veröffentlicht, da das Projekt als „geheim“ eingestuft wurde.

Ein Trackball wurde 1952 auch im DATAR-System der kanadischen Marine eingesetzt. Dieser "Kugelzeiger" wurde von Tom Cranston verwendet.



9. Der erste Computer zur gemeinsamen Speicherung von Daten und Programmen im Speicher: SSEM (1948)


Die Manchester Small-Scale Experimental Machine (SSEM) ist der erste elektronische Computer, der auf dem Prinzip der gemeinsamen Speicherung von Daten und Programmen im Speicher basiert. Die Schöpfer - Frederick Williams, Tom Kilburn und Jeff Tutill - waren Mitglieder der University of Manchester. Die Maschine wurde als experimentelle Vorrichtung zur Untersuchung der Eigenschaften des Computerspeichers auf einer CRT ("Williams Tube") konzipiert. Programme wurden in zweiteiliger Form mit 32 Schaltern für CRT-Produkte eingeführt.

Das erfolgreiche Testen von SSEM war übrigens der Beginn der Entwicklung eines vollwertigen Computers auf Williams 'Handys - „Manchester Mark I“.



10. Die erste Programmiersprache auf hoher Ebene: Plankalkül (Plankalkül, 1948)


Diese Sprache wurde von Konrad Zuse (Entwickler des ersten funktionierenden Z3-Computers) verwendet. Obwohl Zuse seit 1943 mit der Erstellung von Plankalkül begann, wurde es erstmals 1948 angewendet, als ein Wissenschaftler eine Arbeit über Programmierung veröffentlichte. Diese Programmiersprache hat zwar nicht viel Aufmerksamkeit erregt. Der erste Compiler für Plancalkul (für moderne Computer) wurde erst im Jahr 2000 vom Professor der Freien Universität Berlin - Joachim Homan - erstellt.



11. Erster Monteur: "Initial Teams" bei EDSAC (1949)


Assembler ist ein Übersetzer des Quellcodes eines Programms, das Mnemonik (niedrige Ebene) in eine numerische Darstellung (Maschinencode) konvertiert.

Der weltweit erste funktionierende und praktisch verwendete Computer mit einem im Speicher abgelegten Programm. Die Programme waren mnemonische Codes anstelle von maschinellen Codes, was den Quellcode zum allerersten Assembler machte.



12. Der erste Personal Computer: "Simon" (1950)


Simon war der erste verfügbare Computer. Es wurde von Edmund Berkeley entworfen und vom Maschinenbauingenieur William Porter und den Absolventen der Columbia University, Robert Jenson und Robert Wall, gebaut. Simon hatte ein Befehlssystem und konnte neun Operationen ausführen, darunter zwei arithmetische Operationen - Addition und Subtraktion sowie Vergleich und Auswahl von Argumenten. Zahlen und Befehle wurden vom Lochstreifen gelesen und das Ergebnis auf dem Anzeigefeld angezeigt. Zahlen im Bereich von 1 bis 255 in binärer Notation, die auf Lochstreifen gestopft sind, könnten eingegeben werden.



13. Erster Compiler: A-0 für UNIVAC 1 (1952)


Compiler ist ein Programm, das eine Hochsprache in Maschinencode konvertiert. A-0 System war ein Programm der legendären Programmiererin Grace Hopper. Das Hauptziel des Systems bestand darin, ein Programm, das als Folge von Unterprogrammen und Argumenten definiert ist, in Maschinencode umzuwandeln. A-0 wurde mit seinem Quellcode für Kunden freigegeben und ist damit möglicherweise die allererste öffentlich verfügbare Software.

1952 erhielt Hopper einen gebrauchsfertigen Compiler. Ihre Aussage zu diesem Thema:

Sie konnten es nicht glauben. Ich hatte einen funktionierenden Compiler und niemand hat ihn benutzt. Immerhin sagten sie mir, dass ein Computer nur arithmetische Operationen ausführen kann.




14. Der erste Autocode: Autocode Glenny (1952)


Autocode ist der Name einer Gruppe von Programmiersprachen auf hoher Ebene, die der Compiler verwendet. Der erste Autocode wurde für eine Reihe von Computern an den Universitäten von Manchester, Cambridge und London erstellt. Der Autocode wurde von einem Mitarbeiter von Turing in Manchester erstellt - Alik Gleni (tatsächlich zu seinen Ehren benannt).



15. Die erste Computermaus (1964)


Die Idee einer Computermaus kam während einer Konferenz über Computergrafik auf die Idee eines amerikanischen Physikers Douglas Engelbart. Er entwickelte ein Gerät mit zwei kleinen Drehrädern, mit denen sich der Cursor frei auf dem Bildschirm bewegen lässt. Der Prototyp wurde von seinem leitenden Ingenieur Bill English erstellt, aber English und Angelbart erhielten nie Lizenzgebühren für das Design.



16. Der erste kommerzielle Computer: Programma 101 (1965)


Der PC Programma 101, auch bekannt als Perottina, war der erste kommerzielle PC der Welt. Er führte die folgenden Aktionen aus: Addition, Subtraktion, Multiplikation, Division, berechnete die Quadratwurzel, den absoluten Wert und den Teil. Der Computer hatte einen Preis von 3.200 US-Dollar und verkaufte sich trotz der hohen Kosten gut (ca. 44.000 Einheiten). Die Programma 101 wurde vom italienischen Ingenieur Pierre Giorgio Perotto erfunden.



17. Der erste Touchscreen (1965)


Auf dem Foto unten - der erste Touchscreen (obwohl er modernen Modellen nicht sehr ähnlich ist). Dies ist ein Touchscreen-Panel ohne Druckempfindlichkeit (gleichermaßen für jede Berührung des Bildschirms) mit einem einzigen Kontaktpunkt. Anschließend wurde das Konzept bis in die 90er Jahre von Fluglotsen in Großbritannien angewendet.



18. Die erste objektorientierte Programmiersprache: Simula (1967)


Simula ist eine universelle Programmiersprache, die von Mitarbeitern des norwegischen Rechenzentrums (Oslo) Kristen Nygord und Ole-Johan Dahl zur Modellierung komplexer Systeme entwickelt wurde. Charles Richard Hoares Lehren über Klassenkonstrukte, Programmiersprachen mit Objekten, Klassen und Unterklassen führten zur Schaffung von SIMULA 67.

Simula 67 war auch die erste Sprache mit integrierter Unterstützung für die grundlegenden Mechanismen der objektorientierten Programmierung.

Ein kleines Codebeispiel
Begin
   Class Glyph;
      Virtual: Procedure print Is Procedure print;
   Begin
   End;

   Glyph Class Char (c);
      Character c;
   Begin
      Procedure print;
        OutChar(c);
   End;

   Glyph Class Line (elements);
      Ref (Glyph) Array elements;
   Begin
      Procedure print;
      Begin
         Integer i;
         For i:= 1 Step 1 Until UpperBound (elements, 1) Do
            elements (i).print;
         OutImage;
      End;
   End;

Ref (Glyph) rg;
   Ref (Glyph) Array rgs (1 : 4);

   ! Main program;
   rgs (1):- New Char ('A');
   rgs (2):- New Char ('b');
   rgs (3):- New Char ('b');
   rgs (4):- New Char ('a');
   rg:- New Line (rgs);
   rg.print;
End;


Sie können viel von den Pionieren in der Geschichte des Rechnens und Erstellens von Computern lernen. Die Arbeit von Generationen vor uns hat zu vielen Veränderungen geführt, die die moderne IT-Welt prägen.

Source: https://habr.com/ru/post/de387479/


All Articles