Einführung in MikrosimD

Das Bild zeigt das Hauptfenster von MikrosimD:

Unten links im befindet sich die ALU (Arithmetisch-Logische Einheit) und eine Reihe von Registern (1-Byte-Speicher). Alle Bitfolgen sind hexadezimal angegeben, die zwei Hexadezimalzahlen, die in jedes der Register geschrieben werden können entsprechen also einem Byte.

Rechts ist der Arbeitsspeicher (das RAM) mit 256 Byte Speicherplatz (von 00h bis FFh)

Zwischen den Registern, der ALU und dem Arbeitsspeicher stehen "Tore" (von 0h bis Fh), die man durch Klicken öffnen kann.

Wenn ein Tor geöffnet ist, kann im nächsten Bus-Takt der im Register gespeicherte Wert über den Bus transportiert werden. Ein Bus-Takt wird durch den Button > unten links ausgelöst.

Erste Schritte

Stelle zunächst die Torsteuerung unten links auf Manuell.

Vollziehe die folgenden Beispiele nach

Beispielaufgaben 1

1

Trage im Register AX den Wert 17h ein, dieser soll in die Register BX und DR kopiert werden.

Öffne die Tore 1, 2 und A

Löse nacheinander mehrere Taktschritte aus, indem du auf die Schaltfläche > klickst und beobachte, was geschieht.

Setze anschließend die Simulation zurück (Zurücksetzen → Register löschen oder F9)

2

In den Registern AX, BX und DR steht zunächst die Zahl 00. in beiden Registern soll die Zahl 01 eingetragen werden.

Öffne die Tore 0, 2, 7 und A

Löse nacheinander mehrere Taktschritte aus, indem du auf die Schaltfläche > klickst und beobachte, was geschieht.

Setze die Simulation zurück

3

Im Register AX steht der Wert 08h, im Register DR steht der Wert 03h. In BX soll die Summe der in den Registern von AX und DR gespeicherten Werte stehen (also 0Bh).

Findest du selbst heraus, welche Tore geöffnet werden müssen?

Lösung

Öffne die Tore 1, 2 und 9

Löse nacheinander mehrere Taktschritte aus, indem du auf die Schaltfläche > klickst und beobachte, was geschieht.

4

Im Register AX steht der Wert 08h, im Register DR steht der Wert 03h. In AX und DR soll die Differenz der beiden Registerinhalte eingetragen werden (also AX-DR, 05h).

Findest du selbst heraus, welche Tore geöffnet werden müssen? Überlege, welche Funktion das Tor D haben könnte.

Lösung

Öffne die Tore 0, 1, 9, A und D

Löse nacheinander mehrere Taktschritte aus, indem du auf die Schaltfläche > klickst und beobachte, was geschieht.

Beispielaufgaben 2