Einstieg in das Thema
Was brauchst du als Basiswissen?
Du kannst Register laden und verändern. Du weißt, dass `CP` einen Wert mit A vergleicht und bei Gleichheit das Zero-Flag setzt.
Worum geht es?
In einer höheren Programmiersprache beschreiben `if` und `while` den Programmablauf. Ein Prozessor verwendet dafür Vergleiche und Sprünge zu bestimmten Adressen.
Was ist das Ziel?
Du kannst unbedingte und bedingte Sprünge verfolgen, Verzweigungen und Zählschleifen erkennen sowie kleine Abläufe selbst in Maschinensprache formulieren.
Erarbeitung
Theorie
Checkliste (für die KI oder den Lehrer)
- normalerweise führt der PC zum nächsten Befehl
- Sprungbefehl setzt den PC auf eine andere Adresse
- JP verwendet eine absolute Zieladresse
- JR speichert einen relativen Abstand, im Applet wird die Zieladresse eingegeben
- Z bedeutet Zero-Flag gesetzt, NZ bedeutet nicht gesetzt
- JP Z und JR Z springen bei Gleichheit nach CP
- JP NZ und JR NZ springen bei Ungleichheit nach CP
- Verzweigung entsteht aus Vergleich, bedingtem Sprung und Programmwegen
- Rückwärtssprung ermöglicht eine Schleife
- Zähler muss verändert werden, sonst droht eine Endlosschleife
Aufgaben
Zusammenfassung
Was muss man wissen und können?
Sprünge verändern den PC. JP verwendet absolute Adressen, JR relative Abstände. Z und NZ machen einen Sprung vom Zero-Flag abhängig. Vergleich, bedingter Sprung und verschiedene Befehlsfolgen bilden eine Verzweigung. Ein Rückwärtssprung und ein veränderter Zustand bilden eine Schleife.
Was können anschließende Themen sein?
In der Prüfungsvorbereitung werden Register, Speicher, Rechnungen, Vergleiche und Programmabläufe verbunden. Eine spätere Vertiefung kann indirekte Adressierung, Unterprogramme und größere Bildschirmprogramme behandeln.