Menu

Stored Program Computers Exam Questions

15 Edexcel GCSE Computer Science (1CP2) exam-style questions on Stored Program Computers (3.1 Hardware), 40 marks in all. Answer them on paper or print them, then open the mark schemes and example answers to see how each is marked.

Revise Stored Program Computers first

Build a paper on 3.1 Hardware
Print
1Multiple choice1 mark

Identify the component of the CPU that carries out arithmetic and logical operations.

[1 mark]
  • AArithmetic logic unit
  • BControl unit
  • CMain memory
  • DRegister
Mark scheme
  • A Arithmetic logic unit (1)
  • The only correct answer is A. The correct answer is arithmetic logic unit.
  • B is not correct because the control unit decodes instructions and controls the CPU
  • C is not correct because main memory is not part of the CPU and stores data and instructions
  • D is not correct because a register stores small amounts of data within the CPU
Example answers and how they were marked
Full marks1/1

A Arithmetic logic unit

Why: Correct option: the arithmetic logic unit carries out arithmetic and logical operations (1).

No marks0/1

B Control unit

Why: Control unit is a CPU component but its role is to decode and control, not perform arithmetic or logical operations, so no mark.

No marks0/1

D Register

Why: Register stores data but does not carry out operations; a common misconception that any CPU component performs calculations, so no mark.

2Multiple choice1 mark

Identify the function of the control unit in the fetch-decode-execute cycle.

[1 mark]
  • ADecodes instructions
  • BPerforms arithmetic operations
  • CStores data and instructions
  • DTemporarily stores data being processed
Mark scheme
  • A Decodes instructions (1)
  • The only correct answer is A. The correct answer is Decodes instructions.
  • B is not correct because the arithmetic logic unit performs arithmetic operations
  • C is not correct because main memory stores data and instructions
  • D is not correct because registers temporarily store data being processed
Example answers and how they were marked
Full marks1/1

A Decodes instructions

Why: Correct option: the control unit decodes instructions during the fetch-decode-execute cycle (1).

No marks0/1

C Stores data and instructions

Why: Main memory stores data and instructions, not the control unit; this is a common distractor, so no mark.

No marks0/1

B Performs arithmetic operations

Why: Arithmetic operations are performed by the ALU, not the control unit; a common confusion between CPU components, so no mark.

3Multiple choice1 mark

Identify the bus that carries addresses in one direction only, from the CPU to main memory.

[1 mark]
  • AAddress bus
  • BControl bus
  • CData bus
  • DSystem bus
Mark scheme
  • A Address bus (1)
  • The only correct answer is A. The correct answer is address bus. Do not accept 'address' on its own.
  • B is not correct because the control bus carries control signals in both directions between the CPU and other components
  • C is not correct because the data bus carries data in both directions between the CPU and main memory
  • D is not correct because the system bus is the collection of all three buses
Example answers and how they were marked
Full marks1/1

A Address bus

Why: Correct option: the address bus carries addresses in one direction only, from the CPU to main memory (1).

No marks0/1

C Data bus

Why: The data bus carries data in both directions, so it is not the bus that carries addresses in one direction only from the CPU to main memory; no creditworthy point.

No marks0/1

B Control bus

Why: The control bus carries control signals in both directions, not addresses in one direction only; this is the common control/address bus confusion, so no mark.

4Short recall2 marks

Computers use the von Neumann stored program concept.

Define the term stored program concept.

[2 marks]
Mark scheme

Award one mark for any of the following up to a maximum of two marks:

  • Program instructions are stored in main memory/RAM (1)
  • The data used by the program is stored in main memory/RAM (1)
  • The CPU fetches/reads instructions from main memory to execute them (1)
  • The program can be run without the instructions being input again (1)

Allow 'the program is stored in memory' for one mark.

Do not accept answers about programs being stored on secondary storage, such as a hard disk or USB memory stick.

Do not accept answers that only describe the von Neumann architecture (e.g. having a CPU and memory) without stating that instructions are stored in main memory.

Example answers and how they were marked
Full marks2/2

Both the program instructions and the data the program uses are held in the same main memory, and the CPU fetches these instructions from memory to execute them.

Why: Instructions stored in main memory (1) and the CPU fetches instructions from memory to execute them (1).

Some marks1/2

Program instructions are stored in main memory.

Why: Instructions stored in main memory (1). No second point about data being stored in the same memory or about the CPU fetching instructions.

No marks0/2

The program is saved on the hard disk so that it can be loaded into RAM when the user runs it.

Why: A near-miss about secondary storage, which the mark scheme says not to accept; the stored program concept is about instructions being held in main memory.

5Short recall2 marks

The central processing unit (CPU) contains an arithmetic logic unit (ALU).

State two types of operation carried out by the ALU.

[2 marks]
Mark scheme

Award one mark for any of the following up to a maximum of two marks:

  • An arithmetic operation, e.g. addition/subtraction/multiplication/division (1)
  • A logical operation, e.g. comparing two values (is A > B?) / using AND, OR, NOT (1)

Do not accept decoding instructions, fetching instructions or controlling the timing of the CPU, as these are carried out by the control unit.

Example answers and how they were marked
Full marks2/2

It carries out arithmetic operations such as addition and subtraction, and logical operations such as comparing two values to see if one is greater than the other.

Why: Arithmetic operation (1) and logical operation (1).

Some marks1/2

It adds numbers together and works out the result.

Why: Arithmetic operation, addition (1). No logical operation.

No marks0/2

It decodes the instructions that have been fetched from main memory.

Why: Decoding and fetching are the control unit's role; the mark scheme's do-not-accept line covers this.

6Describe2 marks

A computer is based on the von Neumann stored program concept.

Describe how the CPU uses main memory (RAM) during the fetch-decode-execute cycle.

[2 marks]
Mark scheme

Award up to two marks for a linked description such as:

  • The program's instructions (and the data it uses) are held in main memory/RAM (1) so the CPU fetches both the instructions and the data from that one memory (1)
  • The CPU fetches the next instruction from main memory/RAM (1) using the address of the memory location that holds it (1)
  • The CPU reads/fetches data from main memory/RAM (1) when an instruction needs it and writes the result back to main memory/RAM (1)
  • The program's instructions are held in main memory/RAM while the program runs (1) and the CPU fetches them one at a time/one after another to be decoded and executed (1)

Allow 'memory' for main memory/RAM.

Allow 'gets' for fetches/reads.

For both marks, the development must say what the CPU does with the contents of main memory (fetches/reads/writes), not just that main memory is used.

Do not accept answers about the program being stored in secondary storage, such as on a hard drive, or about it being loaded from there.

Do not accept benefits such as the computer running faster or being easier for the user.

Do not accept naming CPU components (control unit, arithmetic logic unit, registers) or buses on their own, without saying what is stored or fetched.

Do not accept 'the computer stores data' on its own, without a link to the instructions of a program.

Example answers and how they were marked
Full marks2/2

The program's instructions and the data it uses are both held in the same main memory (RAM) (1), so the CPU can fetch the instructions and the data it needs from that one memory (1).

Why: Linked point (1) that instructions and data are stored together in main memory, with the development (1) that the CPU fetches both from the same memory.

Some marks1/2

The CPU fetches the instructions from main memory (1) so that they are processed more quickly (1).

Why: The first point earns (1) for the CPU fetching instructions from main memory. The second statement is a benefit (speed), which the 'Do not accept benefits' line rules out, so it earns nothing.

No marks0/2

The control unit decodes each instruction (1) and the ALU carries out the calculations (1).

Why: Both statements name CPU components without saying what is stored, fetched or written, which the mark scheme tells examiners not to accept, so neither earns a mark.

7Describe2 marks

The CPU contains an arithmetic logic unit (ALU).

Describe the purpose of the arithmetic logic unit (ALU).

[2 marks]
Mark scheme

Award up to two marks for a linked description such as:

  • Carries out arithmetic operations/calculations, such as addition or subtraction (1) so that the result can be stored in a register (1)
  • Carries out logical operations, such as comparing two data items (1) to see which one is greater/larger (1)
  • Compares two data items (1) to decide whether a condition is true / which path a program takes next (1)

Allow the result of an arithmetic or logical operation being held/stored in a register, but only where the operation is named.

Do not accept answers that say the ALU stores data or results without naming an operation (registers/main memory store data).

Do not accept answers about controlling components, decoding instructions or timing (that is the control unit or the clock).

Do not award credit for 'it processes data' on its own; an arithmetic or a logical operation must be named.

An example on its own, e.g. 'it adds two numbers', does not earn a second mark; the second mark needs a linked development.

Example answers and how they were marked
Full marks2/2

The ALU carries out arithmetic operations such as addition and subtraction (1), and the result of the calculation is stored in a register (1).

Why: Linked point (1) for arithmetic operations with an example, and development (1) for the result being stored in a register.

Some marks1/2

It does all the calculations in the CPU, for example adding two numbers together.

Why: Point (1) for arithmetic operations/calculations named with an example; no linked development, so the second mark is not earned.

No marks0/2

It stores the results of calculations so that they can be used by the CPU later.

Why: Storing results with no arithmetic or logical operation named, which the 'Do not accept' line rules out, so no mark is earned.

8Describe2 marks

The control unit (CU) is a component inside the CPU.

Describe the role of the control unit in the fetch-decode-execute cycle.

[2 marks]
Mark scheme

Award up to two marks for a linked description such as:

  • Decodes each (fetched) instruction (1) to work out which operation is needed / which components should carry it out (1)
  • Coordinates/directs the other components (1) by sending control signals along the control bus (1)
  • Fetches the next instruction (1) by sending its address to main memory along the address bus (1)
  • Sends a read/write control signal to main memory (1) so that the instruction or data is transferred during the fetch/execute stage (1)

Do not accept answers about synchronising the CPU or timing the cycles (that is the role of the clock).

Do not accept answers about carrying out arithmetic or logical operations (that is the ALU).

Do not accept answers about holding data or the results of instructions (that is registers/main memory).

Do not accept generic answers that only say the CU controls the CPU or processes instructions, with no linked development.

Only award one mark for a response that only repeats that the CU sends control signals; the second mark needs a linked outcome such as coordination, a memory read/write, or fetching an instruction.

Do not accept 'during the decode stage' as the development for the decoding point, as it restates the question.

Example answers and how they were marked
Full marks2/2

It decodes the instruction that has been fetched (1) so that it knows which operation the CPU must carry out and which components should do it (1).

Why: Decoding named with the acceptable wording 'each (fetched) instruction' (1), plus the linked development that this identifies the operation and components (1).

Some marks1/2

It decodes each instruction during the decode stage of the cycle.

Why: Earns (1) for decoding the instruction. 'During the decode stage' restates the question and is not accepted as a development, so the second mark is not earned.

No marks0/2

It carries out the calculations and comparisons when the instruction is executed.

Why: Calculations and comparisons are the ALU's role, which the 'Do not accept' line rules out, so no mark is earned.

9Explain2 marks

Computers use the von Neumann stored program concept.

Explain one benefit of storing program instructions in main memory.

[2 marks]
Mark scheme

Award up to two marks for a linked explanation such as:

  • A new program can be loaded/changed without rewiring/reconfiguring the computer (1) because the instructions are held in main memory and can be replaced (by loading a different program) (1)
  • Different programs can be run on the same computer (1) because the program instructions are stored in RAM/main memory (1)
  • The CPU can fetch instructions automatically (1) so an operator is not needed to enter each instruction by hand (1)
  • Instructions can be stored and run in sequence (1) because the CPU reads the next instruction from main memory (1)

For both marks, the expansion must follow/associate with the statement.

Allow a benefit stated as an example, e.g. a program can be run as soon as it is loaded (1), with a linked reason (1)

Do not accept a statement that only describes storing or loading, e.g. 'programs can be loaded into memory', without a benefit and a linked reason.

Do not accept 'it is faster' / RAM is quicker to access than secondary storage / RAM is closer to the CPU (1 for nothing): this describes the speed of RAM, not a benefit of storing program instructions in main memory.

Do not accept answers about secondary storage holding programs, e.g. 'the program is kept on the hard drive when the computer is turned off', as this is a property of secondary storage, not of the stored program concept.

Ignore references to the fetch-decode-execute cycle that are not linked to a benefit.

Example answers and how they were marked
Full marks2/2

A new program can be loaded without changing the hardware (1) because the instructions are held in main memory and can be replaced (1)

Why: Linked benefit (1) and linked reason (1), matching the first mark scheme line.

Some marks1/2

Different programs can be run on the same computer.

Why: Valid benefit stated (1) but no linked reason is given, so the second mark is not awarded.

No marks0/2

It is faster because RAM is closer to the CPU.

Why: A speed answer about RAM, which the mark scheme's 'Do not accept' line rules out, so no creditworthy point and no linked reason.

10Explain2 marks

The control unit is a component of the CPU.

Explain one role of the control unit in the fetch-decode-execute cycle.

[2 marks]
Mark scheme

Award up to two marks for a linked explanation such as:

  • It decodes instructions (1) so the CPU knows what operation/instruction to perform (1)
  • It sends control signals (1) to coordinate/control the flow of data/instructions between components (1)
  • It manages/directs the fetch-decode-execute cycle (1) by controlling the sequence/timing of the stages (1)
  • It directs the other components of the CPU (1) so that each instruction is fetched/decoded/executed in the correct order (1)

For both marks, the expansion must follow/associate with the statement.

Allow an explanation that the control unit directs data/instructions along the address/data/control buses (1) so the fetch-decode-execute cycle can take place (1)

Do not accept a generic 'it controls the CPU/components' point without linked expansion as to what is controlled/directed.

Do not accept 'it fetches instructions from memory' on its own; credit only if linked to the address/data/control buses or control signals.

Do not accept 'it stores/holds the instruction/data' as this is the role of a register.

Do not accept answers about the ALU performing calculations.

Example answers and how they were marked
Full marks2/2

It decodes instructions (1) so the CPU knows which operation to carry out (1)

Why: Linked point (1) and reason (1).

Some marks1/2

It decodes instructions.

Why: Creditworthy point (1) but no linked reason (0).

No marks0/2

It stores the instructions that are being executed.

Why: Misconception: storing/holding the instruction is the role of a register, not the control unit.

11Explain2 marks

A computer uses an address bus, a data bus and a control bus.

Explain the role of the data bus in the fetch-decode-execute cycle.

[2 marks]
Mark scheme

Award up to two marks for a linked explanation such as:

  • Carries the instruction from main memory to the CPU (1) so that it can be decoded/executed (1)
  • Carries data from main memory to the CPU/registers (1) so that it can be processed by the ALU (1)
  • Carries the result of an operation from the CPU/registers (1) back to main memory to be stored (1)
  • Carries an instruction/a data item from main memory to the CPU (1) during the fetch stage of the cycle (1)

For both marks, the expansion must follow/associate with the statement.

Do not accept 'the data bus carries data' on its own without a linked reason such as where the data is carried to or from.

Do not accept 'carries instructions to the CPU' without a linked reason such as so that it can be decoded, or naming the fetch stage.

Do not accept 'carries memory addresses' — that is the role of the address bus.

Do not accept 'carries control signals' — that is the role of the control bus.

Example answers and how they were marked
Full marks2/2

It carries the instruction from main memory to the CPU (1) so that it can be decoded (1)

Why: Linked point (1) and reason (1).

Some marks1/2

It carries data from main memory to the CPU.

Why: Creditworthy point (1) but no linked reason (0).

No marks0/2

It carries the memory address of the next instruction.

Why: Misconception: carrying addresses is the role of the address bus, not the data bus.

12Short recall3 marks

The CPU contains several components.

Name three components of the CPU.

[3 marks]
Mark scheme

Award one mark for any of the following up to a maximum of three marks:

  • Control unit / CU (1)
  • Arithmetic logic unit / ALU (1)
  • Register(s) (1)
  • Clock (1)

Do not accept main memory / RAM.

Do not accept cache.

Marks can be awarded in any order.

Example answers and how they were marked
Full marks3/3

Control unit, arithmetic logic unit and registers.

Why: Names three creditworthy CPU components (control unit, ALU, registers), one mark each.

Some marks2/3

Control unit, clock and main memory.

Why: Control unit (1) and clock (1) are creditworthy; main memory is not a component of the CPU, a common misconception seen in the June 2023 question.

No marks0/3

Main memory, RAM and cache.

Why: None are CPU components named in the specification; candidates often confuse main memory with CPU components.

13Discuss6 marks

A college is replacing the computers in its IT suite. The technician tells the students that the new computers use the von Neumann stored program concept.

Discuss the von Neumann stored program concept and the role of the CPU and main memory (RAM) in the fetch-decode-execute cycle.

Your answer should consider:

  • the role of main memory (RAM)
  • the role of the CPU components (control unit, arithmetic logic unit, registers and clock)
  • the role of the address, data and control buses.

You do not need to consider how clock speed affects performance.

[6 marks]
Mark scheme

Indicative content

Stored program concept

  • The stored program concept means that the program instructions and the data the program is using are both held in the same main memory (RAM).
  • The CPU fetches an instruction from main memory, the control unit decodes it and the instruction is executed, and this is repeated in the fetch-decode-execute cycle.
  • The program is stored as a set of binary instructions, so a different program can be run on the college's new computers by loading different instructions into RAM rather than by changing any hardware.
  • Instructions are usually carried out one at a time, in the order in which they are stored, which is suitable for the computers in the IT suite that each run one piece of software at a time.

Main memory (RAM)

  • Main memory (RAM) holds the instructions and the data that the CPU is currently using.
  • RAM is directly accessible by the CPU, so the required instruction or item of data can be fetched quickly during the fetch stage of the cycle.
  • RAM can be read from and written to while a program is running, so the results produced by the students' work can be stored back into memory.
  • RAM is volatile, so its contents are lost when the power is turned off, and the college's computers will have empty RAM each time they are started.

CPU components

  • The control unit decodes each instruction and coordinates the timing and control of the other parts of the CPU, so it directs the fetch-decode-execute cycle.
  • The arithmetic logic unit (ALU) carries out arithmetic operations and logical comparisons on the data, for example working out a student's total mark in a spreadsheet.
  • Registers are small, fast storage locations inside the CPU that hold the address of the next instruction, the instruction being decoded and the data being worked on.
  • The clock sends a regular signal that synchronises the actions of the CPU, so each step of the cycle is carried out in time with the clock.

Buses

  • The address bus is one way, from the CPU to main memory, and carries the address of the memory location that the CPU wants to read from or write to.
  • The data bus carries the instruction or the data between the CPU and main memory, so it is used to bring an instruction to the CPU in the fetch stage.
  • The control bus carries control signals such as read and write, so the CPU can tell main memory whether it is reading an instruction or writing data.

Levels

  • Level 0 (0 marks): No rewardable content.
  • Level 1 (1–2 marks): Basic, independent points are made, showing elements of understanding of key concepts/principles of computer science. (AO1) The discussion will contain basic information with little linkage between points made or application to the context. (AO2)
  • Level 2 (3–4 marks): Demonstrates adequate understanding of key concepts/principles of computer science. (AO1) The discussion shows some linkages and lines of reasoning with some structure and application to the context. (AO2)
  • Level 3 (5–6 marks): Demonstrates comprehensive understanding of key concepts/principles of computer science to support the discussion being presented. (AO1) The discussion is well developed, with sustained lines of reasoning that are coherent and logically structured, and which clearly apply to the context. (AO2)

Additional guidance

  • Level 3 responses must cover the role of main memory (RAM) and the role of the CPU components or the buses during the fetch-decode-execute cycle, as well as the stored program concept.
  • Do not accept RAM described as being inside the CPU, or as non-volatile, or any point about how clock speed affects performance, because the question excludes it.
Example answers and how they were marked
Full marks6/6

The von Neumann stored program concept means that the program instructions and the data the program is using are both held in the same main memory (RAM). This means each of the college's new computers can run any piece of software simply by loading a different set of instructions into its RAM, with no change to the hardware. The CPU fetches an instruction from RAM, the control unit decodes it and the instruction is executed, and this repeats in the fetch-decode-execute cycle. RAM holds the instructions and data that the CPU is currently using and is directly accessible by the CPU, so they can be fetched quickly, but it is volatile, so the contents are lost when a computer is switched off at the end of the day. During the fetch stage, the address bus carries the address of the instruction in RAM, the data bus carries the instruction back to the CPU, and the control bus carries the control signals, such as read, that tell main memory what to do. Registers inside the CPU hold the address of the next instruction and the data being worked on, the clock sends a regular signal so that every step of the cycle happens in time, and the ALU carries out the arithmetic and logical operations needed by the students' work in the IT suite.

Why: Level 3: accurate stored program concept linked to loading software on the college's computers, the role of RAM including volatility, and the roles of the address, data and control buses, registers, clock and ALU, all applied to the situation.

Some marks3/6

The stored program concept means that the program instructions and the data the program is using are stored together in the same memory. The CPU fetches an instruction from main memory, decodes it and then executes it. Main memory (RAM) holds the instructions and data that the CPU is using and it can be read from and written to, so the CPU can get at them quickly. RAM is volatile, so its contents are lost when the computer is switched off.

Why: Level 2: an adequate account of the stored program concept and the role of RAM, with one line of reasoning (fetch, decode, execute) and the volatility point, but no coverage of the CPU components or the buses and no application to the college's computers, so it stays at the lower end of Level 2.

Some marks1/6

In von Neumann architecture the CPU fetches and decodes instructions one at a time. RAM is the memory inside the CPU that stores the program so that it is not lost when the computer is switched off. The clock speed makes the CPU faster so the fetch-decode-execute cycle runs more quickly.

Why: Level 1: one basic point about the CPU fetching and decoding instructions from memory; RAM is wrongly placed inside the CPU and described as non-volatile and the clock speed point is excluded by the question, so neither is credited.

14Discuss6 marks

A school is buying new desktop computers for its computer science classroom. The teacher explains that each computer uses the von Neumann stored program concept: the program instructions and the data are stored together in main memory, and the CPU runs each instruction by carrying out the fetch-decode-execute cycle.

Discuss the role of the control unit, the arithmetic logic unit (ALU) and registers in the fetch-decode-execute cycle.

Your answer should include:

  • how an instruction is fetched from main memory and decoded
  • how the ALU executes an instruction
  • how registers are used during the cycle.
[6 marks]
Mark scheme

Indicative content

Fetching and decoding an instruction

  • The register that holds the address of the next instruction (the program counter) contains the address of the instruction to be fetched.
  • This address is sent to main memory (RAM) and the instruction is copied from main memory into a register inside the CPU.
  • The program counter is updated so that it holds the address of the next instruction in the program.
  • The control unit decodes the instruction that has been fetched, working out which operation is required and which data or registers are needed.
  • The control unit sends control signals to coordinate the other components as the instruction is carried out.
  • The control unit decides what happens next, for example after a comparison it decides whether the next instruction is the following one or a jump.

The arithmetic logic unit (ALU) executes an instruction

  • The control unit directs the arithmetic logic unit (ALU) to carry out the operation.
  • The ALU performs arithmetic operations such as addition, subtraction, multiplication and division, for example adding two values in a program written by the class.
  • The ALU performs logical operations such as comparing two values to see if they are equal or whether one is greater than the other.
  • The result of the operation carried out by the ALU is passed back and stored in a register.
  • The ALU operates on data that has been fetched from main memory; it does not fetch the instruction and it does not decide which instruction is next.

Registers

  • Registers are small, very fast memory locations inside the CPU.
  • They hold the data, addresses and results that the CPU is working on during the cycle.
  • Registers are used in every stage of the cycle, not only when the ALU produces a result.
  • Because registers are inside the CPU they can be read and written much faster than main memory during the cycle.

Levels

  • Level 0 (0 marks): No rewardable content.
  • Level 1 (1–2 marks): Basic, independent points are made, showing elements of understanding of key concepts/principles of computer science. (AO1) The discussion will contain basic information with little linkage between points made or application to the context. (AO2)
  • Level 2 (3–4 marks): Demonstrates adequate understanding of key concepts/principles of computer science. (AO1) The discussion shows some linkages and lines of reasoning with some structure and application to the context. (AO2)
  • Level 3 (5–6 marks): Demonstrates comprehensive understanding of key concepts/principles of computer science to support the discussion being presented. (AO1) The discussion is well developed, with sustained lines of reasoning that are coherent and logically structured, and which clearly apply to the context. (AO2)
  • A Level 3 answer must link the roles of all three components to the fetch, decode and execute stages. An answer that links only one component to a stage, with the other points listed separately, is Level 1 (1–2 marks); an answer that links two of the components to stages is Level 2 (3–4 marks). A point repeated under more than one heading is credited once only.
  • Accept 'the program counter', 'the address register' or 'a register holding the address of the next instruction' as the register that holds the address of the next instruction. Do not accept 'the control unit performs the calculations', 'the ALU controls the timing of the CPU' / 'the ALU sends the clock signal' or 'registers are in main memory (RAM)'.
Example answers and how they were marked
Full marks6/6

In the fetch stage, a register called the program counter holds the address of the next instruction and this address is sent to main memory. The instruction is copied from main memory into a register in the CPU and the program counter is updated so that it points to the next instruction. The control unit then decodes the instruction in the decode stage, working out which operation is required and which data or registers are needed, and it sends control signals to coordinate the other components. In the execute stage the control unit directs the ALU to carry out the operation the class's program needs: the ALU does arithmetic, such as adding two values, or a logical comparison, such as checking whether one value is greater than another, and it does not decide what happens next, the control unit does. The result from the ALU is stored in a register, and because registers hold the data, addresses and results at every stage, the cycle can repeat with the next instruction.

Why: Level 3: the role of each component is linked to the stage it works in (program counter and registers in fetch, control unit decoding and deciding next, ALU executing and its result stored in a register) across all three stages, with the classroom context.

Some marks2/6

The control unit decodes the instruction in the decode stage. The ALU does maths and logic, such as addition and comparing numbers. Registers store data inside the CPU. In the fetch stage the instruction is fetched from the RAM and put into the CPU.

Why: Level 1: several correct basic points that the mark scheme credits (the instruction is fetched from main memory into the CPU, the control unit decodes the instruction, the ALU does arithmetic and logical operations, registers store data) but only the control unit is linked to a stage of the cycle, so the answer is top of Level 1.

Some marks1/6

The control unit decodes instructions. The ALU controls the timing of the CPU and sends the clock signal. Registers are in the RAM and they store the program.

Why: Level 1: one basic point, that the control unit decodes instructions (1). The other statements are on the do-not-accept list (the ALU does not control the timing of the CPU or send the clock signal, and registers are in the CPU, not main memory), so they earn no credit.

15Discuss6 marks

A college is buying new computers for its computer science classroom. A technician explains that the CPU uses three buses to communicate with main memory and other components.

Discuss the role of the address bus, the data bus and the control bus in the fetch-decode-execute cycle.

Your answer should include:

  • what each bus carries
  • the direction in which each bus carries it
  • the role of the buses in the fetch-decode-execute cycle.
[6 marks]
Mark scheme

Indicative content

What each bus carries

  • The address bus carries the address of a memory location that the CPU wants to read from or write to.
  • The data bus carries data and instructions between the CPU and main memory, and between the CPU and other components such as the input and output controllers.
  • The control bus carries control signals, such as read and write, that coordinate the activities of the computer.
  • The clock is a separate component that sends regular pulses, and the control bus carries the signals that keep the other components in time with those pulses.

Direction

  • The address bus is one-way, carrying addresses from the CPU to main memory.
  • The data bus is two-way, so data and instructions can travel both to and from the CPU.
  • The control bus carries control signals from the control unit to the other components, and it is not the clock signal itself.
  • The number of bits in the address bus determines how many memory locations can be addressed, and the number of bits in the data bus determines how much can be transferred at one time.

The role of the buses in the fetch-decode-execute cycle

  • Fetch: the address of the next instruction, held in a register in the CPU, is placed on the address bus so that main memory knows which location to read.
  • Fetch: the control unit sends a read signal on the control bus to main memory.
  • Fetch: the instruction held in that location is returned to the CPU on the data bus.
  • Decode: the control unit decodes the instruction and sends control signals on the control bus to set up the other components, for example telling the ALU which operation to carry out.
  • Execute: the address of any data needed is placed on the address bus, a read or write signal is sent on the control bus, and the data itself travels between the CPU and main memory on the data bus.
  • The cycle repeats, with each step taking place in time with a pulse from the clock.

Level 3 responses must cover all three buses and link them to the fetch-decode-execute cycle, including the fetch stage and at least one of the decode and execute stages. Answers that describe each bus correctly but link none of them to a stage of the cycle are limited to Level 1.

Do not accept 'the address bus carries data', 'the data bus carries addresses', 'the data bus carries instructions only during the fetch stage', 'the control bus carries the clock signal' or 'the control bus is the clock'; the clock is a separate component whose pulses the control signals coordinate with.

Levels

  • Level 0 (0 marks): No rewardable content.
  • Level 1 (1–2 marks): Basic, independent points are made, showing elements of understanding of key concepts/principles of computer science. (AO1) The discussion will contain basic information with little linkage between points made or application to the context. (AO2)
  • Level 2 (3–4 marks): Demonstrates adequate understanding of key concepts/principles of computer science. (AO1) The discussion shows some linkages and lines of reasoning with some structure and application to the context. (AO2)
  • Level 3 (5–6 marks): Demonstrates comprehensive understanding of key concepts/principles of computer science to support the discussion being presented. (AO1) The discussion is well developed, with sustained lines of reasoning that are coherent and logically structured, and which clearly apply to the context. (AO2)
Example answers and how they were marked
Full marks6/6

At the start of the fetch stage the address of the next instruction, which is held in a register, is placed on the address bus, which is one-way, so that main memory knows which location to read. The control unit sends a read signal on the control bus, and the instruction held at that address is returned to the CPU on the data bus, which is two-way. In the decode stage the control unit works out what the instruction means and sends control signals on the control bus to set up the other components, for example telling the ALU which operation to carry out. In the execute stage, if the instruction needs data from memory, the address of that data is placed on the address bus, a read or write signal is sent on the control bus and the data itself travels on the data bus. Every step happens on a pulse from the clock, which is a separate component, and the control bus carries the signals that keep the components in time with it. The widths of the buses matter too: more address bits mean more memory locations can be addressed and more data bits mean more can be moved at once.

Why: Level 3 (6 marks): all three buses are covered, with what each carries and its direction, and each is linked to the fetch, decode and execute stages, plus the role of the clock and the effect of bus widths.

Some marks2/6

The address bus carries addresses from the CPU to the memory and it is one-way. The data bus carries data and it is two-way. The control bus carries control signals. During the fetch stage the CPU fetches the instruction from memory using these buses.

Why: Level 1 (2 marks): each bus is named with a basic correct statement (address bus carries addresses one-way, data bus is two-way, control bus carries control signals), but no bus is linked to a stage of the cycle, so the guidance line limits this to Level 1; the general mention of the fetch stage is not tied to any bus.

No marks0/6

The address bus carries the data to the CPU. The data bus carries the addresses to the memory. The control bus is the clock that makes the CPU run faster.

Why: Level 0 (0 marks): the address bus and data bus roles are swapped, which the scheme says not to accept, and the control bus is wrongly described as the clock, which is also not accepted, so there is no rewardable content.

Keep practising Stored Program Computers

More exam questions on 3.1 Hardware

Teachers: print these as a worksheet with the mark schemes at the end, and sign your school up to set your classes activities on Stored Program Computers.

Fetch Decode Explain isn't affiliated with or endorsed by Pearson Edexcel.