i

Zusammenfassung - JOHNNY-Maschinensprache

Auswahl von Makrobefehlen bei JOHNNY[1]
Fassen wir die JOHNNY-Assembler-Befehle noch einmal systematisch zusammen. Wir können dabei drei Gruppen von Befehlen ausmachen:
  • Befehle, die nur Daten transportieren (Transportbefehle)
  • Befehle, die (auch) Rechenoperationen ausführen (Rechenbefehle)
  • Befehle, die den Ablauf des Programms steuern (Programmablauf-Befehle)

Transportbefehle

Assembler-Befehl Funktion
TAKE Adresse Transportiert die Zahl aus der angegebenen Adresse in den Akkumulator des Rechenwerks
SAVE Adresse Transportiert die Zahl aus dem Akkumulators des Rechenwerks zur angegebenen Adresse

Rechenbefehle

Assembler-Befehl Funktion
ADD Adresse Addiert die Zahl aus der angegebenen Adresse zum Akkumulator des Rechenwerks
Besonders bei JOHNNY: Wäre das Ergebnis größer als 19999, so wird es auf 19999 gesetzt.
SUB Adresse Subtrahiert die Zahl aus der angegebenen Adresse vom Akkumulator des Rechenwerks
Besonders bei JOHNNY: Wäre das Ergebnis kleiner als 0, so wird es auf 0 gesetzt.
INC Adresse Erhöht die Zahl an der entsprechenden Adresse um 1
Besonders bei JOHNNY: Wäre das Ergebnis größer als 19999, so wird es auf 19999 gesetzt.
DEC Adresse Erniedrigt die Zahl an der entsprechenden Adresse um 1
Besonders bei JOHNNY: Wäre das Ergebnis kleiner als 0, so wird es auf 0 gesetzt.
NULL Adresse Setzt die Zahl an der entsprechenden Adresse auf den Wert 0

Programmablauf-Befehle

Assembler-Befehl Funktion
JMP Adresse Setzt das Programm an der angegebenen Adresse fort
TST Adresse Testet die Zahl bei der angegebenen Adresse.
  • Ist die Zahl nicht 0, tut der Befehl selbst fast gar nichts, sondern es wird einfach zum nächsten Befehl weitergegangen.
  • Ist die Zahl hingegen 0, wird im weiteren Verlauf des Programms der nächste (also der auf den TST-Befehl folgende) Befehl übersprungen.
HLT Adresse Das Programm hält definiert an. Die angegebene Adresse ist vollkommen unerheblich.

Quellen

Suche

v
12.4.4.3
dev.inf-schule.de/rechner/johnny/spruenge/zusammenfassung_johnny_asm
dev.inf-schule.de/12.4.4.3
dev.inf-schule.de/@/page/nxqaRjIHqa9viETy

Rückmeldung geben