Lösung: Befehlszyklus
Das Programm (Befehlskette) wurde zuvor in den Speicher geladen.
Befehl laden (engl. fetch)
Der
Programmzähler enthält die Speicheradresse des nächsten abzuarbeitenden
Befehls. Diese Adresse wird zum Speicher
übertragen. Der Speicher liefert den Inhalt dieser Adresse - also den
gespeicherten Maschinenbefehl - zum Befehlsregister.
(Gleichzeitig
wird der Inhalt des Befehlszählers erhöht, und zeigt so bereits auf den
nächsten Befehl, m.a.W. "adressiert" den nächsten Befehl. Diese teilweisen parallelen Vorgänge nennt man Pipelining)
Befehl dekodieren (decode)
Im Befehlsregister wird der Befehl durch den Befehlsdecoder interpretiert.
(Gleichzeitig wird schon der nächste Befehl aus dem Speicher geholt.)
Befehl ausführen (execute)
Der Befehl wird nun (meistens) durch ALU (Arithmetisch-logische Einheit) ausgeführt.
Danach beginnt der Befehlszyklus von vorne.