Assembler

 

Was willst du lieber?

80×86-Assembler lernen oder vielleicht lieber die Befehle des Motorola 68000?

Die zwei sind typische Vertreter des CISC-Lagers.

Vielleicht ziehen Sie den viel kleineren Befehlssatz eines RISC-Prozessors, z.B. PIC16F84 oder gleich einen Registermaschinenbefehlssatz vor?

Du kannst es allerdings auch leichter haben!

Lerne Bonsai-Assembler und komme mit 4 bzw. 5 Befehlen aus.

Zum Erarbeiten der Befehle empfiehlt es sich, das BONSAI-Simulations-Programm herunterzuladen und folgende kleine Übungen durchzuführen.

Es hat sich gezeigt, dass auf modernen Computern oder auch unter Linux unter der
DosBox das Bonsai-Programm fehlerfrei läuft. Dazu sollte man mit ‚keyb gr 437‘ die deutsche Tastatur und die alte Dos-Codepage einschalten (y erreicht man auf dem z) und mit ‚mount c: /home/mk/bonmini‘ einem geeigneten Pfad den  Laufwerksbuchstaben c: zuordnen. Das kann man automatisieren, wenn man in dosbox-0.xx.conf z.B.

[autoexec] # Lines in this section will be run at startup. # You can put your MOUNT lines here. keyb gr 437 mount c /home/mk/1112/fdi/bonmini

einträgt. Weiß man jetzt noch, dass mit der Tastenkombination Alt-RET auf Vollbild und zurück geschaltet werden kann, dann ist man für fast alles gerüstet. Mit Strg-F10 bekommt man den Mauszeiger aus dem DosBox-Fenster wieder heraus.

Erarbeitung der Bonsai-Befehle und einiger Begriffe

1. JMP, Programmzähler PC, Takt, Editieren

  • Starte das BONSAI-Programm
  • Wähle Editieren – Programm (Alt E/P). Es erscheint das Programmeditierfenster.
  • Gib folgendes Programm ein
    1 jmp 2
    2 jmp 1
  • Beende die Eingabe mit Strg-Return (Ctrl-Return). Auf dem Bildschirm erscheint nun das Programm.
  • Wähle jetzt Programmlauf – ohne CPU-Simulation (Alt G/O). Es erscheint ein Dreieck (<) auf dem Bildschirm, das immer auf den nächsten auszuführenden Befehl zeigt. Das Dreieck heißt Befehlszähler (program counter, PC).
  • Drücke zur Ausführung des Befehls jeweils die Taste ‚C‘ (clock, Takt) und verfolge das Programm. Du hast jetzt gesehen, was der JMP-Befehl bewirkt und den PC kennengelernt.
  • Verlasse nun die Option BONSAI-Lauf (unten links angezeigt) mit der Anwahl eines anderen Menüpunkts oder mit ESC.

2. INC, Datenregister

  • Gib nun folgendes Programm ein.
    1 inc 1
    2 jmp 1

    Lasse es wie oben laufen. Du erhältst eine Fehlermeldung, weil du das Datenregister 1 nicht initialisiert hast, hole das nach.

  • Wähle Editieren – Daten editieren (Alt E/D). Es erscheint das Dateneditierfenster.
  • Gib z.B. in das Datenregister 1 eine 0 ein ! Beende die Eingabe mit Strg-Return(Ctrl-Return.).
  • Lasse das Programm ausführen. Du weißt jetzt, was ein Datenregister ist und was der INC-Befehl bewirkt.

3. DEC

  • Erforsche analog, was der DEC-Befehl leistet.

4. TST, HLT

  • Gib das Programm
    1 tst 3
    2 jmp 4
    3 jmp 5
    4 hlt
    5 hlt

    ein, fülle das Datenregister 3 einmal mit 0 und einmal mit einer Zahl <> 0 und führe jeweils das Programm durch.

  • Wie funktioniert der tst-Befehl?

5. Bonsai-Programme laden und speichern

  • Speichere mit Datei – BONSAI-Programm speichern (Alt D/S) ab. Wähle dabei
    einen eigenen Namen.
  • Lade deine Datei mit Datei – BONSAI-Programm laden (Alt D/L) wieder ein.

6. Fazit

Du hast jetzt nicht nur die BONSAI-Befehle gelernt, sondern auch den Umgang mit dem BONSAI-Programm.

Aufgaben

  • Schreibe ein Programm, das ein Register z.B. 3 auf Null setzt.
  • Schreibe ein Additionsprogramm.
  • Schreibe ein Multiplikationsprogramm.