Befehlszähler
Der Programmschrittzähler oder auch Befehlszähler (engl. program counter, kurz PC oder instruction pointer, kurz IP) ist ein spezielles Register innerhalb der CPU eines Computers, das die Speicheradresse des nächsten auszuführenden Befehls enthält (siehe auch Zeiger).
Der Programmschrittzähler wird im Register des Prozessors verwaltet.
Wurde ein Befehl erfolgreich ausgeführt, geht der Computer in der Befehlsfolge des Programms weiter: die CPU liest von der im Programmschrittzähler angegebenen Speicheradresse den nächsten Befehl aus, erhöht den Zähler und führt den Befehl aus.
Handelt es sich dabei um einen Sprungbefehl (goto), so wird der Zeiger entsprechend gesetzt. Bei einer Verzweigung (etwa der Aufruf eines Unterprogrammes) wird der Programmschrittzähler auf dem Stack gesichert und die Verarbeitung an der Speicheradresse des Unterprogramms fortgesetzt. Nach Beendigung des Unterprogramms wird der Programmschrittzähler wieder aus dem Stack zurückgeholt und die Ausführung an der ursprünglichen Stelle fortgesetzt.