Community resourceWorksheet

J277 1.1.1 Von Neumann architecture and registers

Part 3 of 6 · J277 1.1 · Systems architecture

The stored-program model behind section 1.1, and the four registers OCR names by abbreviation.

Students will:

  • distinguish an address from the contents stored at it
  • state what the PC, MAR, MDR and accumulator each hold
  • read a processing snapshot and say what happens next
  • describe the Von Neumann model of stored programs and data
  • apply the registers to processing scenarios

Inside: 6 explanation cells, 2 multiple-choice questions, 2 fill-in-the-blanks cells and 5 written answers. 43 marks, about 75 minutes.

Series: J277 1.1 · Systems architecture, part 3 of 6.

Shared by Coding PathwayVerified teacher

  • 15 cells
  • About 75 minutes
  • CC BY-SA 4.0
  • Shared 17 Aug 2026
  • Updated 9 Sept 2026

Preview

The whole resource, exactly as a class sees it. Answers and marking are held back.

Systems architecture 3: Von Neumann architecture and registers

The Von Neumann architecture provides the model used for this topic. Program instructions and data are stored in memory, and the CPU fetches and processes the instructions. Inside the CPU, registers temporarily hold particular values needed during processing.

The abbreviations may look unfamiliar at first. Keep asking one simple question: what does this register store? You are learning four short roles, not a long hidden process.

OCR J277 names four registers:

  • Program Counter (PC)
  • Memory Address Register (MAR)
  • Memory Data Register (MDR)
  • accumulator (ACC)

By the end, you should be able to state what each register stores, distinguish data from an address and apply the registers to processing scenarios.

Multiple choice1 mark

Which CPU component coordinates the fetch-execute cycle and decodes instructions?

  • AAccumulator
  • BArithmetic logic unit
  • CCache
  • DControl unit

1. Address or contents?

An address identifies a location in memory. It tells the computer where an item can be found or where it should be stored.

The contents of that location may be an item of data or an instruction.

Imagine numbered lockers:

  • locker number 42 is an address
  • the instruction inside locker 42 is the content stored at that address

This distinction is central to register questions. The PC and MAR store addresses. The MDR stores data or an instruction transferred between memory and the CPU. The accumulator stores data being processed or a result from the ALU. It does not store an instruction.

Always describe a register using the verb stores. A register holds a value; another component carries out the action.

Registers grouped by what they store The PC and MAR store addresses. The MDR stores data or an instruction moving between memory and the CPU. The accumulator stores data being processed or a result. Ask: what does each register store? Memory addresses PC next instruction address MAR address currently being accessed Transferred item MDR data or an instruction Processed item ACC data or a result
Fill in the blanks6 marks
An label 1 identifies a label 2 in memory. The label 3 store addresses. The label 4 can store data or an instruction, while the label 5 stores data being processed or a label 6.
  • PC and MAR
  • MDR
  • accumulator
  • location
  • control unit
  • address
  • result
  • cache

2. The four required registers

Program Counter (PC)

The Program Counter stores the memory address of the next instruction to be fetched. It is not a count of how many programs or instructions have finished.

Memory Address Register (MAR)

The Memory Address Register stores the address in memory that is currently being accessed. This may be the address of data or an instruction to be fetched, or the address where data will be stored.

Memory Data Register (MDR)

The Memory Data Register stores data or an instruction being transferred between the CPU and memory. It can hold an item fetched from memory or an item that is about to be stored in memory.

Accumulator (ACC)

The accumulator stores data currently being processed and results produced by arithmetic or logical operations in the ALU.

Notice the repeated precision: a register stores something.

Fill in the blanks6 marks
The label 1 stores the address of the label 2 to be fetched. The label 3 stores the address in memory currently being accessed. The label 4 stores data or an instruction being transferred between memory and the CPU. The label 5 can store a label 6 produced by the ALU.
  • Program Counter
  • Memory Address Register
  • Memory Data Register
  • accumulator
  • control unit
  • calculation result
  • next instruction
  • cache
Multiple choice, several answers4 marks

Which four register statements are correct? Select all that apply.

  • AThe PC stores the address of the next instruction to be fetched
  • BThe PC counts how many programs have been opened
  • CThe MAR stores the address in memory currently being accessed
  • DThe MDR can store data or an instruction transferred between the CPU and memory
  • EThe MDR stores only memory addresses
  • FThe accumulator can store a result produced by the ALU
Written answer4 marks

Describe the purpose of the PC, MAR, MDR and accumulator.

Write one sentence per register. Begin each sentence with “stores” and specify whether the value is an address, data or an instruction.

Students type their answer here.

3. Read a processing snapshot

A CPU is about to fetch the instruction stored at memory address 208. The instruction found there is ADD 7. After execution, the ALU produces the result 19.

At different moments, the relevant values could be described as:

  • 208 is an address
  • ADD 7 is an instruction
  • 19 is processed data or a result

You do not need to memorise the exact movement of these values from one register to another at every stage. OCR requires you to know the purpose of each register, what it stores and the difference between an address and data.

Written answer8 marks

Using the snapshot above, identify a suitable register for each item and explain why.

A. The address of the next instruction, 208

B. The address currently being accessed, 208

C. The instruction ADD 7 while it is transferred from memory

D. The result 19 after the calculation

Write four pairs: register, then what that register stores.

Students type their answer here.

4. The Von Neumann model

In a Von Neumann system, program instructions and data are stored in the same memory. The CPU can fetch an instruction from memory, decode it and execute it, then continue with the next instruction.

For OCR J277, your assessed register set is PC, MAR, MDR and accumulator. Some older resources show additional registers, but these four are the registers listed in the current 1.1 specification.

You are not required to learn a detailed register-transfer script for every stage. Concentrate on the stable purpose of each named register.

Written answer4 marks

Explain the difference between storing data and storing an address. Use the MAR and MDR as examples.

Define an address as a location and data as the content. Then link one definition to each register.

Students type their answer here.

Written answer4 marks

A student writes: “The PC fetches the next instruction, the MAR stores the instruction, the MDR stores its address, and the accumulator does every calculation.” Correct all four statements.

Use “stores” for every register. Remember that the ALU performs calculations; the accumulator holds data or results.

Students type their answer here.

Written answer6 marks

Challenge: use all four registers together. Explain why confusing an address with data would make an answer about registers inaccurate.

Build a connected response. Define an address and the contents of a memory location, distinguish what each of the four registers stores, and explain why swapping these roles makes an answer inaccurate.

Students type their answer here.

Closed-book review

Draw three headings: stores an address, stores data or an instruction, and stores data or a result. Place PC, MAR, MDR and accumulator under the correct heading. Then write the exact purpose of each register.

Finally, answer:

  • Which register is often wrongly described as counting programs?
  • Which component performs a calculation?
  • Which register stores its result?

Check that every register description says what it stores.