Die Bonsai-Assemblersprache
Befehle und ihre Bedeutung
Die Bonsai-Assemblersprache geht von folgenden Speichermodell aus:
Der Speicher besteht aus (im Prinzip) beliebig vielen Datenregistern, die beginnend mit 0 durchnummeriert sind. In jedem Register kann eine natürliche Zahl abgelegt werden.
Die folgende Übersicht zeigt die Befehle, die zur Verarbeitung der Registerdaten zur Verfügung stehen:
Befehl | Bedeutung |
---|---|
inc i | Erhöhe den Inhalt des Registers i um 1. Gehe zum nächsten Befehl. |
dec i | Verringere den Inhalt des Registers i um 1, sofern dieser Inhalt ungleich 0 ist. Gehe zum nächsten Befehl. |
jmp i | Gehe zum Befehl in Zeile i. |
tst i | Falls der Inhalt von Register i ungleich 0 ist, dann gehe zum nächsten Befehl, ansonsten zum übernächsten Befehl. |
hlt | Beende die Abarbeitung. |
Ein Bonsai-Assblerprogramm ist eine Folge von Bonsai-Assemblerbefehlen. Hier ein Beispiel:
0 tst 2 1 jmp 3 2 jmp 5 3 dec 2 4 jmp 0 5 hlt
In der Regel beginnt ein Bonsai-Assblerprogramm mit der Zeilennummer 0. Denkbar sind aber auch andere Fälle.
2 jmp 4 4 tst 2 5 jmp 7 6 jmp 9 7 dec 2 8 jmp 4 9 hlt