Eine der großen Vorteile moderner Technologie ist, dass wir alte Systeme mit hoher Präzision nachbilden können. Zwei klassische und immer wiederkehrende Beispiele sind die Enigma-Maschine und das Apollo-Navigationsmodul, aber heute geht es um einen noch extremeren Fall. David Given, besser bekannt als Hjalfi auf YouTube und Twitter, hat beschlossen, einen Computer aus den 1960er Jahren zu simulieren, der in verschiedenen Raumfahrtprojekten eingesetzt wurde – und das Beeindruckendste: Er hat seine Arbeit in einem achteinhalbstündigen Video geteilt.

Simulator für einen Raumfahrtcomputer aus den 1960er Jahren
Computersimulator

Der OBP (On-Board Processor) wurde ursprünglich im Jahr 1968 entworfen und in verschiedenen Raumfahrtprojekten eingesetzt. Eines der wichtigsten war das Teleskop OAO-3 Copernicus, das erfolgreichste der gesamten OAO-Serie (Orbiting Astronomical Observatory), mit einer Mission, die von August 1972 bis Februar 1981 dauerte.

David Given, auch bekannt als Hjalfi, teilte interessante technische Details über den OBP auf seiner offiziellen Seite: 18 Bit, Von-Neumann-Architektur, Daten und Code teilen sich denselben Adressraum, Speicherschutz, DMA... kurz gesagt, ein sehr angenehmes System zum Arbeiten. Mit einer Taktfrequenz von 250 kHz hat der OBP ernsthafte Geschwindigkeitsbeschränkungen, aber David hat sich nicht mit einer oberflächlichen Analyse zufriedengegeben und einen Simulator von Anfang bis Ende erstellt.

Simulator für den OBP: ein Computer aus den 1960ern

Eure Augen täuschen euch nicht: Das Video dauert achteinhalb Stunden und entspricht drei Arbeitstagen. Die Einleitung dauert fünf Minuten, aber der Assembler umfasst mehr als eine Stunde, und der Rest konzentriert sich auf den Simulator. Eines der interessantesten Details des Assemblers ist, dass er laut der Originaldokumentation in natürlicher Sprache programmiert werden sollte. In Wirklichkeit versteht der Assembler die Wörter nicht sozusagen, sondern bestimmte Schlüsselphrasen sind bestimmten Anweisungen zugeordnet.

Simulator für einen Raumfahrtcomputer aus den 1960er Jahren
Ein Beispiel aus dem offiziellen Handbuch. Abgesehen von einigen Details... ist es Englisch.

Das beweist, dass das Programmieren in natürlicher Sprache etwas ist, das wir seit Jahrzehnten erforschen und das nie wirklich an Zugkraft gewonnen hat. David erklärt, dass die englische Sprache grundsätzlich mehrdeutig und kontextabhängig ist, während Programmiersprachen das genaue Gegenteil sind. Vielleicht ist die Sprache für uns leicht zu lesen und zu interpretieren, aber es ist auch leicht, dass der Assembler auf dem Kopf landet. Angesichts der Möglichkeit von Fehlern ist es für den Programmierer bequemer, jede Quelle von Mehrdeutigkeit zu beseitigen und die Anweisungen direkt zu schreiben.

Möchtest du mehr wissen? Link unten!

Offizielle Website: Hier klicken

Quelle: Hackaday