Program counter
A CPU register storing the memory address of the next instruction to execute. Program counter enables sequential execution through automatic incrementing. Jumps and branches modify program counter enabling non-sequential flow.
Real World
When a Python for-loop runs on your laptop, the CPU's program counter jumps back to the loop's start address after each iteration rather than continuing sequentially to the next memory location.
Exam Focus
Explain that the program counter increments automatically but can be overwritten by jump or branch instructions.
How well did you know this?