Aufgaben B: Erste Programme mit LMC

In diesem Aufgabenset wollen wir nun erste Baby Steps mit dem LMC machen und erste, ganz einfache Progrämmchen schreiben. Stelle auch wieder sicher, dass du das Instruction Set zur Hand hast.

Little Man Computer Simulation

Little Man Computer Help

Ziel ist, zwei Zahlen zu addieren.

1) Schreibe dazu mit der Tastatur zwei Zahlen an zwei unterschiedliche Speicheradressen wie im Beispiel unten. Verwende dafür Speicheradressen im hinteren Bereich (Warum? → später).

Beispiel: Zahlen $30$ und $12$ wurden an Speicheradressen $54$ und $55$ gespeichert. Es ist irrelevant, ob die beiden Adressen direkt beieinander liegen oder nicht.

2) Mit den Befehlen, die du im Aufgabenset A angetroffen hast, solltest du nun in der Lage sein, den zugehörigen Assemblercode zu schreiben. Notiere aber zuerst in Worten einen Plan, wie der Code grob aussehen soll (noch kein Assemblercode).

Lösung

3) Schreibe nun den zugehörigen Assemblercode.

Achtung: Nachdem du den Code geschrieben hast und „Submit“ drückst, wird der Code in den Speicher geschrieben. Dementsprechend werden die Werte, die du bei 1) in den Speicher geschrieben hast, überschrieben und du musst sie neu eintippen.

Lösungen

4) Führe den Code nun aus: In Codefenster kopieren / Submit / RUN.

Tipps:

  • Falls es dir zu langsam geht: OPTIONS / Default fast
  • Klicke RESET bevor du den Code wieder laufen lässt.

5) Das Resultat sollte jetzt im Akkumulator stehen. Schön wäre es, wenn dieses im OUTPUT-Fenster stehen würde. Füge die entsprechende Zeile Code hinzu.

Lösungen

6) Zusätzlich soll nun das Resultat an einer freien Stelle im Speicher gespeichert werden. Füge die entsprechende Zeile Code hinzu.

Lösungen

Programm:

  1. Die Benutzerin soll nacheinander zwei Zahlen im Input-Feld eingeben können.
  2. Die beiden Zahlen werden dann voneinander subtrahiert und zwar (erste Zahl) - (zweite Zahl).
  3. Das Resultat wird im Speicher gespeichert und ausgegeben.

Auftrag:

  1. Mache einen Programmierplan: Wie kannst du das Programm oben umsetzen? Überlege dir selber, vergleiche dann mit Lösung 1.
  2. Schreibe folgendes Programm mit dem LMC:

Lösung 1

Lösung 2

  • gf_informatik/computerarchitektur_sca/aufgaben_b.txt
  • Zuletzt geändert: 2023-08-18 06:32
  • von sca