Erkundung - Sprünge in Maschinenprogrammen
Wir betrachten nun Programme mit zwei neuen Befehlen: JMP und TST. Wieder können wir durch Beobachten herausbekommen, was diese Befehle bewirken.
Aufgabe 1: Der Befehl "JMP"
Teste die beiden folgenden Programm und notiere Dir danach, was der Befehl "JMP" tut.
Programm 1:
000: INC 010 001: JMP 004 002: INC 011 003: INC 011 004: INC 012 005: HLT 000
Programm 2:
000: INC 010 001: INC 011 002: INC 012 003: JMP 001 004: HLT 000Überlege, wie sinnvoll in diesem Programm eigentlich der HLT-Befehl beim Programm 2 ist.
Aufgabe 2: Der Befehl "TST"
Teste das folgende Programm und beobachte dabei die Werte der Speicherstelle 10. Notiere Dir, was der Befehl "TST" tut.
Hinweis: Der Befehl "TST" tut nicht immer etwas.
000: INC 010 001: INC 010 002: INC 010 003: INC 010 004: DEC 010 005: TST 010 006: JMP 004 007: INC 010 008: HLT 000
Es kann sein, dass Du mehrere Programmläufe brauchst, um die Lösung für diese Aufgabe zu sehen: "TST" ist der schwierigste Befehl im JOHNNY-Assembler.