Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
| Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
| gf_informatik:computerarchitektur_sca:aufgaben_b [2023-08-02 12:07] – [Aufgabe B2: Subtraktion] sca | gf_informatik:computerarchitektur_sca:aufgaben_b [2025-09-08 13:18] (aktuell) – [Aufgabe B2: Subtraktion] sca | ||
|---|---|---|---|
| Zeile 18: | Zeile 18: | ||
| {{: | {{: | ||
| - | 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): | + | 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| | ++++Lösung| | ||
| Zeile 29: | Zeile 29: | ||
| ++++ | ++++ | ||
| - | 3) Schreibe nun den zugehörigen Assemblercode: | + | 3) Schreibe nun den zugehörigen Assemblercode. |
| + | |||
| + | **Achtung:** Nachdem du den Code geschrieben hast und " | ||
| ++++Lösungen| | ++++Lösungen| | ||
| Zeile 72: | Zeile 74: | ||
| ==== Aufgabe B2: Subtraktion ==== | ==== Aufgabe B2: Subtraktion ==== | ||
| - | Schreibe folgendes | + | Programm: |
| - | Die Benutzerin soll nacheinander zwei Zahlen im Input-Feld eingeben können. Die beiden Zahlen werden dann voneinander subtrahiert. Das Resultat wird im Speicher gespeichert und ausgegeben. | + | |
| - | ++++Help Me I| | + | 1. Die Benutzerin soll nacheinander zwei Zahlen im Input-Feld eingeben können. |
| + | 1. Die beiden Zahlen werden dann voneinander subtrahiert und zwar (erste Zahl) - (zweite Zahl). | ||
| + | 1. Das Resultat wird im Speicher gespeichert und ausgegeben. | ||
| - | * Sehr ähnlich wie die Aufgabe vorher. | + | Auftrag: |
| - | * Neu: Finde heraus, wie man Eingaben machen kann. Schaue dafür im Instruction Set nach. Falls du es wirklich nicht alleine schaffst -> Help Me II | + | |
| - | ++++ | + | 1. Mache einen Programmierplan: |
| + | 1. Schreibe folgendes Programm mit dem LMC: | ||
| - | ++++Help Me II| | ||
| - | * Input eingeben | + | ++++Lösung 1| |
| + | |||
| + | 1. Zuerst müssen Zahlen eingegeben werden. Mithilfe des Instruction Sets findest du heraus, wie das geht. | ||
| + | 1. Die eingegebenen Zahlen müssen im RAM zwischengespeichert werden. | ||
| + | 1. Danach ähnlich wie bei Addition: | ||
| + | 1. erste Zahl von Speicher einlesen | ||
| + | 1. zweite Zahl subtrahieren | ||
| + | 1. Resultat speichern und ausgeben. | ||
| + | 1. Programm beenden. | ||
| + | |||
| + | Vielleicht fragst du dich, warum man die Zahlen | ||
| ++++ | ++++ | ||
| - | ++++Lösungen| | + | ++++Lösung 2| |
| <code assembler> | <code assembler> | ||
| Zeile 98: | Zeile 110: | ||
| LDA 97 | LDA 97 | ||
| SUB 98 | SUB 98 | ||
| - | OUT STA 99 | + | OUT |
| + | | ||
| HLT | HLT | ||
| </ | </ | ||
| ++++ | ++++ | ||