Registerprogramm/Abbildung/Einführung/Textabschnitt

Aus Wikiversity

Wir möchten ein Registerprogramm , das aus Programmzeilen besteht und Register anspricht, als eine Abbildung auffassen. Die Wirkungsweise einer jeden Programmzeile hängt dabei nur von den Belegungen der Register zu dem Zeitpunkt ab, an dem diese Zeile aufgerufen wird. Sie ist geschichtsunabhängig, d.h. unabhängig von dem bisherigen Verlauf des Programmes. Man kann daher ein Programm vollständig durch die Abbildung

erfassen. Diese Abbildung nennen wir die Programmabbildung . Dabei steht für die Programmzeilennummer und steht für den Inhalt des Registers (von denen es ja Stück gibt). Dem Tupel wird dasjenige Tupel zugeordnet, das bei Abruf des in der -ten Programmzeile stehenden Befehls bei der Registerbelegung entsteht. Die Abbildung besteht dabei aus den Komponentenfunktionen , wobei die Wirkungsweise auf die Programmzeilennummer und die , , die Wirkungsweise auf das -te Register beschreibt. Die Wirkung der einzelnen Befehle sieht folgendermaßen aus.

Bei ist

Bei ist

bei und

bei . Bei ist

Bei (also bei ) ist

die Abbildung wirkt dort also wie die Identität. Der Druckbefehl ist für den Programmablauf nicht relevant und wird hier ignoriert.