AS Level · Topic 4.1
A-Level Computer Science 9618 / Topic 4 / AS

The stored program.

Almost every computer you have used follows a design described in 1945: one memory holds both the program and its data, and a processor fetches and runs the instructions one by one. Learn the parts of that processor and the job of every register inside it.

The key idea

In the Von Neumann model, a computer has a single processor and one memory. The stored program concept means that program instructions and data are held together in the same main memory, and instructions are fetched from it and executed one at a time, in sequence. Inside the processor, the control unit (CU) decodes instructions and sends control signals, the arithmetic and logic unit (ALU) does calculations and comparisons, the system clock times every step, and registers hold the values in use. A special purpose register has one fixed job (PC, MAR, MDR, CIR, IX, status register); a general purpose register holds any data being processed (the accumulator, ACC).

processor (CPU) CU ALU system clock PC CIR MAR MDR IX SR ACC special purpose + one general purpose (ACC) IAS (main memory) 100 LDD 150 101 ADD #5 102 STO 151 150 37 stored program: instructions and data share one memory
Fig. 1: the processor's units and registers, linked by the buses to the immediate access store
Section 01

The stored program.

Click each part in the lab to see what it does. The Von Neumann model is the reason a computer can switch from a game to a spreadsheet: the program is just more data loaded into memory.

Examiner trap

"Data and programs are stored in memory" is not enough to describe the stored program concept. Say they are stored together in the same memory and that instructions are fetched and executed one at a time.

Section 02

Units and the clock.

Three components inside the processor do the work, and they all depend on the memory beside it. Exam questions ask for their purpose, so learn one precise sentence for each.

ComponentPurpose
Arithmetic and logic unit (ALU)Carries out arithmetic (such as addition and subtraction), logic operations (AND, OR, XOR), shifts and comparisons.
Control unit (CU)Decodes the instruction in the CIR and sends control signals along the control bus to manage the transfer of data and the order of operations.
System clockProduces regular timing pulses that synchronise all the components, so every step of the cycle happens in step.
Immediate access store (IAS)Holds the instructions and data of the programs currently running, so the processor can fetch them directly.
Your turn
An instruction compares the value in the accumulator with 0. Which unit carries out the comparison, and which unit decoded the instruction first?
Examiner trap

The control unit does not do calculations. It decodes and controls; the ALU calculates and compares.

Stage 1 · Learn

Check what the sim just showed you

Four quick checks. Each correct answer earns XP and records this skill on your profile.

Quick check+10 XP

What does the stored program concept say?

Quick check+10 XP

In the lab, which register holds the address of the next instruction?

Quick check+10 XP

Which register is a general purpose register in the 9618 model?

Quick check+10 XP

What is the purpose of the system clock?

Section 03

Seven registers.

A register is a very fast storage location inside the processor that holds one value, such as an address, an instruction or a data item. The 9618 syllabus names seven.

RegisterTypePurpose
Program counter (PC)SpecialHolds the address of the next instruction to be fetched.
Memory address register (MAR)SpecialHolds the address of the memory location about to be read from or written to.
Memory data register (MDR)SpecialHolds the data or instruction just read from, or about to be written to, memory.
Current instruction register (CIR)SpecialHolds the instruction currently being decoded and executed.
Index register (IX)SpecialHolds a value that is added to an address in indexed addressing, for example to step through an array.
Status register (SR)SpecialHolds individual bits (flags) showing the outcome of an operation, such as carry, negative, overflow and zero, and whether an interrupt has occurred.
Accumulator (ACC)GeneralHolds the data being processed and the results of ALU operations.
Worked example Name the register
Identify the register that (a) is incremented during every fetch, (b) has a flag set when an addition overflows, (c) is added to the operand of LDX.
  1. (a) The register that points to the next instruction is incremented after each fetch: the program counter.
  2. (b) Flags that record the outcome of an ALU operation are held in the status register.
  3. (c) Indexed addressing adds the contents of the index register to the operand to form the address.
Answer: (a) PC (b) status register (c) IX
Examiner trap

General purpose does not mean "used for everything at once". A general purpose register holds whatever data the program is working on; a special purpose register always has the same fixed job.

Stage 2 · Exam

Exam-style questions

Unlocks once the four checks above are done. Worth more XP, written to AS Paper 1 and Paper 2 standard.

Finish the four checks above to unlock the exam questions
Exam style+20 XP

Which register holds a flag that is set when the result of an addition is zero?

Exam style+20 XP

What is the immediate access store?

Exam style+20 XP

Which statement about the MAR and MDR is correct?

Exam style+20 XP

Which register is used to form the address in indexed addressing?

Skill unlocked

The Von Neumann model and its registers, mastered.

This skill is now recorded on your profile. Keep the chain going.

-Rank -Level -Score -Topics
Go deeper · practice
Six original Cambridge-style questions
The stored program concept, the ALU, CU, clock and IAS, and the purpose of every special and general purpose register.