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:start [2023-08-24 21:41] – [Aufgaben] sca | gf_informatik:computerarchitektur_sca:start [2025-09-16 08:11] (aktuell) – [Computerarchitektur & Assemblersprache] sca | ||
|---|---|---|---|
| Zeile 11: | Zeile 11: | ||
| * Wissen, welche **Sprache** eine CPU ' | * Wissen, welche **Sprache** eine CPU ' | ||
| * Python, Assemblersprache und Maschinensprache miteinander vergleichen. Was sind Gemeinsamkeiten, | * Python, Assemblersprache und Maschinensprache miteinander vergleichen. Was sind Gemeinsamkeiten, | ||
| - | * Erklären können, was ein **Befehlssatz** ist. | + | * Erklären können, was ein **Befehlssatz** ist und warum eine CPU einen solchen hat resp. braucht. |
| * Mithilfe des LMC-Befehlssatzes Assemblersprache in Maschinensprache und umgekehrt umwandeln können. | * Mithilfe des LMC-Befehlssatzes Assemblersprache in Maschinensprache und umgekehrt umwandeln können. | ||
| * Die Von **Neumann-Architektur** auswendig skizzieren ... | * Die Von **Neumann-Architektur** auswendig skizzieren ... | ||
| Zeile 17: | Zeile 17: | ||
| * Den Von Neumann-Zyklus skizzieren ... | * Den Von Neumann-Zyklus skizzieren ... | ||
| * ... und erklären können, was in jedem der Schritte passiert. | * ... und erklären können, was in jedem der Schritte passiert. | ||
| - | * Einfache **Codes in Assemblersprache** für den LMC schreiben. | + | * Einfache **Codes in Assemblersprache** für den LMC schreiben.\\ \\ |
| * Anspruchsvollere Codes in Assemblersprache (mit Branches) für den LMC schreiben. | * Anspruchsvollere Codes in Assemblersprache (mit Branches) für den LMC schreiben. | ||
| + | * Verschiedene Arten von Schleifen mit dem LMC programmieren können: | ||
| + | * 1) zuerst Codeblock ausführen, dann Bedingung überprüfen | ||
| + | * 2) zuerst Bedingung überprüfen, | ||
| * LMC Tricks (DAT und Sprung-Instruktionen) kennen und anwenden. | * LMC Tricks (DAT und Sprung-Instruktionen) kennen und anwenden. | ||
| + | * Wissen, was eine **Zeichentabelle** ist und wozu diese verwendet wird. | ||
| + | * ASCII mit Unicode vergleichen können. Gemeinsamkeiten und Unterschiede? | ||
| + | * Zeichen mithilfe von OTC ausgeben können. | ||
| ++++ | ++++ | ||
| Zeile 48: | Zeile 54: | ||
| | 9 | 01001 | OTC | Output accumulator as a character if address is 22. (Non-standard instruction) | | | 9 | 01001 | OTC | Output accumulator as a character if address is 22. (Non-standard instruction) | | ||
| | | | | ||
| + | |||
| + | ++++auf Deutsch| | ||
| + | |||
| + | ^ Code (dec) ^ Code (bin) ^ Name ^ Beschreibung ^ | ||
| + | | 0 | 00000 | HLT | Stopp (Little Man macht eine Pause). | | ||
| + | | 1 | 00001 | ADD | Addiere den Inhalt der Speicheradresse zum Akkumulator. | | ||
| + | | 2 | 00010 | SUB | Subtrahiere den Inhalt der Speicheradresse vom Akkumulator. | | ||
| + | | 3 | 00011 | STA or STO | Speichere den Wert im Akkumulator in der angegebenen Speicheradresse. | | ||
| + | | 4 | 00100 | | Dieser Code ist unbenutzt und erzeugt einen Fehler. | | ||
| + | | 5 | 00101 | LDA | Lade den Akkumulator mit dem Inhalt der angegebenen Speicheradresse. | | ||
| + | | 6 | 00110 | BRA | Verzweigung – verwende die angegebene Adresse als Adresse der nächsten Anweisung. | | ||
| + | | 7 | 00111 | BRZ | Verzweige zur angegebenen Adresse, wenn der Akkumulator null ist. | | ||
| + | | 8 | 01000 | BRP | Verzweige zur angegebenen Adresse, wenn der Akkumulator null oder positiv ist. | | ||
| + | | 9 | 01001 | INP or OUT | Eingabe oder Ausgabe. Bei Adresse 1 von Eingabe lesen, bei Adresse 2 zur Ausgabe schreiben. | | ||
| + | | 9 | 01001 | OTC | Gib den Akkumulator als Zeichen aus, wenn die Adresse 22 ist. (Nicht-standardisierte Anweisung) | | ||
| + | | | ||
| + | |||
| + | ++++ | ||
| {{ : | {{ : | ||
| Zeile 71: | Zeile 95: | ||
| [[gf_informatik: | [[gf_informatik: | ||
| + | |||
| + | [[gf_informatik: | ||