#9 Jun 2024 Q6(b) 4 marks 1.1.1 fetch-execute registers

Question

Lead-in: A computer has a Central Processing Unit (CPU).

(b) Complete the table by writing the name of two registers used in the fetch-execute cycle and the purpose of each register.

RegisterPurpose
  
  

[4]

Why this question is tricky

A common misconception is that the program counter keeps track of how many programs have run or counts the instructions that are being processed.— J277_01_ER_Jun2024.txt lines 333-336

MS complexity 6/10: Register-naming AND match purpose. "If register column incorrect do not mark purpose" — wrong register name kills both marks. "Purpose is not an action such as fetches/takes/retrieves" — use stores or holds.

Full-marks model answer

RegisterPurpose
Program Counter (PC)Stores the address of the next instruction to be fetched.
Memory Data Register (MDR)Stores the data or instruction that has been fetched from memory (or the data/instruction to be written to memory).
Mark allocation (4 marks)
  • PC name (1) + purpose (1) — "Stores the address of the current/next instruction to be fetched".
  • MDR name (1) + purpose (1) — "Stores the data/instruction fetched from memory // stores data/instruction to be stored in memory".
  • Alternatives accepted: MAR ("Stores the address of the instruction/data to be fetched") and ACC ("Stores the result of calculations / stores the result from the ALU").

Watch out for...

The PC does not count programs or count instructions executed — it holds the address of the next instruction. Always start the purpose with "Stores..." or "Holds..." — the MS explicitly excludes action verbs like "fetches", "takes" or "retrieves". And if you name the wrong register (e.g. "ALU" is not a register), you score 0 for that whole row.