This key facts covers Program Counter (PC) - The Instruction Tracker within Program Counter & Accumulator for GCSE Computer Science. Revise Program Counter & Accumulator in 3.4 Computer Systems for GCSE Computer Science with 15 exam-style questions and 12 flashcards. This topic appears regularly enough that it should still be part of a steady revision cycle. It is section 3 of 8 in this topic. Use this key facts to connect the idea to the wider topic before moving on to questions and flashcards.
Program Counter (PC) - The Instruction Tracker
What It Is:
The Program Counter is a special register that holds the memory address of the NEXT instruction to be fetched and executed. It's like a bookmark keeping your place in a book.
How It Works:
- During FETCH: The address in PC is copied to the MAR
- After FETCH: The PC automatically increments (adds 1) to point to the next sequential instruction
- During branches: JUMP, BRANCH, or CALL instructions can change the PC to a different address (for loops, IF statements, functions)
- On program start: PC is set to the address of the first instruction
Key Characteristics:
- Holds an address (not data or instructions)
- Increments during the FETCH stage of the FDE cycle
- Size depends on the address bus width (e.g., 32-bit PC can address 2³² locations)
- Essential for sequential execution and program flow control
Real-world analogy: Like line numbers in a script. An actor (CPU) reads line 5, performs the action, then automatically looks at line 6 next. Unless the script says "GOTO line 20" (a branch instruction), the actor continues sequentially.
Practice questions for Program Counter & Accumulator
What does the Program Counter (PC) store?
Explain what happens to the Program Counter during the fetch stage of the FDE cycle.