Skip to content

4.1 CPU Architecture

AS Level · 22 questions found

  • Von Neumann model and stored program concept
  • Special-purpose registers: PC, MDR, MAR, ACC, IX, CIR, Status Register
  • ALU, Control Unit, system clock, Immediate Access Store (IAS)
  • Address bus, data bus, control bus — data transfer between components
  • Performance factors: cores, bus width, clock speed, cache memory
  • Ports: USB, HDMI, VGA
  • Fetch-Execute cycle and register transfer notation
  • Interrupts: causes, ISR, when detected, how handled
Q6
Oct/Nov 2025 Paper 1 v1

(a) The processor uses several registers, including the Accumulator (ACC) and the Current Instruction Register (CIR). 2 marks

Complete the table by describing the role of each register.

Register Role
ACC
CIR

(b) Increasing the number of cores in a processor can affect the performance of a computer. 2 marks

Describe the drawbacks of increasing the number of cores in a processor.

(c) State three differences between Dynamic RAM (DRAM) and Static RAM (SRAM). 3 marks

1

2

3

### (a) The processor uses several registers, including the Accumulator (ACC) and the Current Instruction Register (CIR). <span class="part-marks">2 marks</span> Complete the table by describing the role of each register. |Register|Role| |---|---| |ACC|______<br>______| |CIR|______<br>______| ### (b) Increasing the number of cores in a processor can affect the performance of a computer. <span class="part-marks">2 marks</span> Describe the drawbacks of increasing the number of cores in a processor. ### (c) State three differences between Dynamic RAM (DRAM) and Static RAM (SRAM). <span class="part-marks">3 marks</span> 1 2 3
Show mark scheme

6(a) [2 marks]

1 mark for each correct description, max 2 marks Register Role stores the intermediate results of arithmetic and logical ACC operations // holds the result of a calculation CIR holds the instruction currently being decoded and/or executed

6(b) [2 marks]

1 mark per bullet point, max 2 marks e.g. • Latency may be increased • … because the cores must communicate with one another • There is a potential for dead-lock situations • … where one core may wait for information from other cores which in turn are waiting for the first one • Not all software is designed to use multi-cores • ... so some of the additional cores would be idle • Increased heat generation • ... which could cause damage to other components

6(c) [3 marks]

1 mark per bullet point, max 3 marks • DRAM requires to be refreshed/charged SRAM does not request a refresh • DRAM stores each bit as charge SRAM uses flip-flop to store each bit • DRAM is less expensive to manufacture SRAM is more expensive to manufacture • DRAM has slower access speeds SRAM has faster access times • DRAM has higher storage/bit/data density SRAM has lower storage/bit/data density • DRAM is used in main memory SRAM is used in cache

Q3
Oct/Nov 2025 Paper 1 v2

(a) (i) State what is meant by relative addressing. 1 mark

(ii) Registers such as the Accumulator (ACC) and the Index Register (IX) are used in the CPU. 2 marks

Identify two special purpose registers used in the CPU. Do not include the ACC or IX in your answers.

1

2

(b) The following table shows part of the instruction set for a processor. The processor has two registers: the ACC and an IX. 3 marks

Instruction Explanation
Opcode Operand Operand
LDM #n Immediate addressing. Load the number n to ACC
LDD
Direct addressing. Load the contents of the location at the given
address to ACC
LDI
Indirect addressing. The address to be used is at the given address.
Load the contents of this second address to ACC
LDX
Indexed addressing. Form the address from
+ the contents
of the index register. Copy the contents of this calculated address to
ACC
LDR #n Immediate addressing. Load the number n to IX
can be an absolute or symbolic address
# denotes a denary number, e.g. #127
can be an absolute or symbolic address
# denotes a denary number, e.g. #127
can be an absolute or symbolic address
# denotes a denary number, e.g. #127

The current contents of the main memory and the index register are shown.

Address Instruction

98 8

99 16

100 3

101 98

102 32

IX 2

Write the contents of the ACC after each instruction is executed.

Instruction Value in ACC
LDM #98
LDI 101
LDX 100

(c) A student buys a new computer. The table shows the specifications of the old computer and the new computer. 4 marks

Old computer New computer
1.8 GHz dual core processor 2.3 GHz dual core processor
16 MB cache 32 MB cache

Explain why increasing the clock speed and increasing the cache memory will improve the performance of the computer.

Clock speed

Cache memory

### (a) (i) State what is meant by relative addressing. <span class="part-marks">1 mark</span> #### (ii) Registers such as the Accumulator (ACC) and the Index Register (IX) are used in the CPU. <span class="part-marks">2 marks</span> Identify two special purpose registers used in the CPU. Do not include the ACC or IX in your answers. 1 2 ### (b) The following table shows part of the instruction set for a processor. The processor has two registers: the ACC and an IX. <span class="part-marks">3 marks</span> |Instruction||Explanation| |---|---|---| |Opcode|Operand|Operand| |LDM|#n|Immediate addressing. Load the number n to ACC| |LDD|<address>|Direct addressing. Load the contents of the location at the given<br>address to ACC| |LDI|<address>|Indirect addressing. The address to be used is at the given address.<br>Load the contents of this second address to ACC| |LDX|<address>|Indexed addressing. Form the address from <address> + the contents<br>of the index register. Copy the contents of this calculated address to<br>ACC| |LDR|#n|Immediate addressing. Load the number n to IX| |<address> can be an absolute or symbolic address<br># denotes a denary number, e.g. #127|<address> can be an absolute or symbolic address<br># denotes a denary number, e.g. #127|<address> can be an absolute or symbolic address<br># denotes a denary number, e.g. #127| The current contents of the main memory and the index register are shown. Address Instruction 98 8 99 16 100 3 101 98 102 32 IX 2 Write the contents of the ACC after each instruction is executed. |Instruction|Value in ACC| |---|---| |LDM #98|| |LDI 101|| |LDX 100|| ### (c) A student buys a new computer. The table shows the specifications of the old computer and the new computer. <span class="part-marks">4 marks</span> |Old computer|New computer| |---|---| |1.8 GHz dual core processor|2.3 GHz dual core processor| |16 MB cache|32 MB cache| Explain why increasing the clock speed and increasing the cache memory will improve the performance of the computer. Clock speed Cache memory
Show mark scheme

3(a)(i) [1 mark]

1 mark • The value of the operand is an offset value which is added to another base value to give the address from which the contents are loaded to the accumulator

3(a)(ii) [2 marks]

1 mark per bullet point, max 2 marks • Program counter (PC) • Memory Data Register (MDR) • Memory Address Register (MAR) • Current Instruction Register (CIR) • Status Register

3(b) [3 marks]

1 mark for each correct value, max 3 marks Instruction Value in ACC LDM #98 98 LDI 101 8 LDX 100 32

3(c) [4 marks]

1 mark per bullet point, max 2 marks for each Clock Speed: • Processor can perform more F-E cycles per second • ... so more instructions / data can be processed each second Cache Memory: • Can store more of the most frequently used instructions • … which reduces the need to access slower RAM

Q6
May/Jun 2025 Paper 1 v1

A programmer is buying a new computer.

(a) The programmer is considering the following two computers:

Computer 1 Quad‑core 2.2 GHz processor
16‑bit architecture
1 GB Random Access Memory (RAM)
500 GB magnetic hard disk
Computer 2 Dual‑core 3.8 GHz processor
32‑bit architecture
2 GB RAM
500 GB solid state drive (SSD)

(i) Computer 1 has a magnetic hard disk. 4 marks

Complete the description of the principal operation of a magnetic hard disk by writing the missing words.

The magnetic hard disk has one or more ______ that can be

magnetised. These are mounted on a ______ and rotate at

high speed.

A ______ is moved across the surface on an arm.

When data is read, the changes in the ______ produce

a change in the electric current.

(ii) The two computers have different amounts of RAM. 3 marks

Explain how different amounts of RAM affect the performance of a computer.

(iii) The two computers have different bus widths. 2 marks

Explain how different bus widths affect the performance of a computer.

(b) Both computers have an Operating System (OS). 5 marks

Describe the purpose of an OS in a computer.

A programmer is buying a new computer. ### (a) The programmer is considering the following two computers: |Computer 1|Quad‑core 2.2 GHz processor<br>16‑bit architecture<br>1 GB Random Access Memory (RAM)<br>500 GB magnetic hard disk| |---|---| |Computer 2|Dual‑core 3.8 GHz processor<br>32‑bit architecture<br>2 GB RAM<br>500 GB solid state drive (SSD)| #### (i) Computer 1 has a magnetic hard disk. <span class="part-marks">4 marks</span> Complete the description of the principal operation of a magnetic hard disk by writing the missing words. The magnetic hard disk has one or more ______ that can be magnetised. These are mounted on a ______ and rotate at high speed. A ______ is moved across the surface on an arm. When data is read, the changes in the ______ produce a change in the electric current. #### (ii) The two computers have different amounts of RAM. <span class="part-marks">3 marks</span> Explain how different amounts of RAM affect the performance of a computer. #### (iii) The two computers have different bus widths. <span class="part-marks">2 marks</span> Explain how different bus widths affect the performance of a computer. ### (b) Both computers have an Operating System (OS). <span class="part-marks">5 marks</span> Describe the purpose of an OS in a computer.
Show mark scheme

6(a)(i) [4 marks]

1 mark for each correctly completed space • platters • spindle • read/write head • magnetic field The magnetic hard disk has one or more platters that can be magnetised. These are mounted on a spindle and rotate at high speed. A read/write head is moved across the surface on an arm. When data is read the changes in the magnetic field produce a change in the electric current.

6(a)(ii) [3 marks]

1 mark each to max 3 • More RAM means more currently running data and instructions can be stored • without needing to use virtual memory • without having to fetch the data from secondary storage first • which has a slower access time • Less latency / delay waiting for instructions / data

6(a)(iii) [2 marks]

1 mark each to max 2 e.g. • Wider data bus means more data can be transferred between components at a time • there is less delay / latency when fetching data for a running process • Wider address bus means larger memory addresses can be used • allowing more memory locations to be accessed directly • so less likely to run out of memory

6(b) [5 marks]

1 mark each to max 5 e.g. • To provide a user interface • so that the user is able to communicate with the hardware • To manage memory • so that data can be stored and accessed • and multitasking is possible • To manage files • allowing the user to create, edit, update and delete files and folders • To manage inputs and outputs from hardware/peripherals • To handle processes • to make sure each process has fair access

Q1
May/Jun 2025 Paper 1 v2

(a) The table has six statements about the Von Neumann model for a computer system. 3 marks

Three of the statements are incorrect.

Statement number Statement
1 The Program Counter (PC) stores the next instruction to be fetched from
memory.
2 The Arithmetic and Logic Unit (ALU) performs mathematical and logical
operations.
3 The Control Unit (CU) sends signals to other components on the data bus.
4 The Memory Data Register (MDR) transfers data to the memory address
stored in the Memory Address Register (MAR).
5 The MAR stores an address from memory.
6 The Accumulator (ACC) stores the result of calculations.

Complete the table by writing the three incorrect statement numbers and the corrected statements.

Incorrect
statement number
Corrected statement
______

______
______

______
______

______
### (a) The table has six statements about the Von Neumann model for a computer system. <span class="part-marks">3 marks</span> Three of the statements are incorrect. |Statement number|Statement| |---|---| |1|The Program Counter (PC) stores the next instruction to be fetched from<br>memory.| |2|The Arithmetic and Logic Unit (ALU) performs mathematical and logical<br>operations.| |3|The Control Unit (CU) sends signals to other components on the data bus.| |4|The Memory Data Register (MDR) transfers data to the memory address<br>stored in the Memory Address Register (MAR).| |5|The MAR stores an address from memory.| |6|The Accumulator (ACC) stores the result of calculations.| Complete the table by writing the three incorrect statement numbers and the corrected statements. |Incorrect<br>statement number|Corrected statement| |---|---| |______|______<br>______<br>______| |______|______<br>______<br>______| |______|______<br>______<br>______|
Show mark scheme

1(a) [3 marks]

1 mark for each correct row Incorrect Corrected statement statement number 1 The Program Counter (PC) stores the address of the next instruction to be fetched from memory. 3 The Control Unit (CU) sends signals to other components on the control bus. 4 The Memory Data Register (MDR) holds data to be stored in the memory address in the MAR. // The Memory Data Register (MDR) holds data read from the memory address in the MAR

1(b) [2 marks]

1 mark for name, 1 mark for corresponding role e.g. • Current Instruction Register // CIR • To store the instruction to be decoded / executed next • Status register // SR • To contain bits that can be referenced individually to indicate a state or event • Interrupt register • To store details of any interrupts that have occurred

1(c) [4 marks]

1 mark each to max 4 • At the start / end of FE cycle the interrupt register is checked • The priority of any interrupts waiting is checked • if the priority of the interrupt is higher than the current process • the contents of the registers are stored on the stack • The relevant Interrupt Service Routine (ISR) / interrupt handler is called to process the interrupt • When the ISR has finished, a further check is made for higher priority interrupts • if no more interrupts of higher priority, the register contents are restored and the next FE cycle continues

Q2
May/Jun 2025 Paper 1 v3

A computer has a processor.

A computer has a processor.
Show mark scheme

2(a)(i) [2 marks]

1 mark each to max 2 - max 1 for each set of marks • The control unit synchronises the actions of the processor • by sending a command / signal on each timing signal produced by the system clock • using / along the control bus

2(a)(ii) [4 marks]

1 mark each •   MAR [PC] and PC [PC] + 1 •  MDR [[MAR]] •  CIR [MDR] • Correct order • For example: •  MAR [PC] •  PC [PC] + 1 •  MDR [[MAR]] •  CIR [MDR]

2(b) [2 marks]

1 mark each • Using cache memory improves system performance • because cache is fast access memory close to the CPU • which stores frequently used instructions / data • so that they can be accessed faster than from RAM

2(c) [2 marks]

1 mark each to max 2 e.g. • HDMI transfers both audio and video using a single cable • HDMI has a high bandwidth • Data is transmitted in a stream • of uncompressed digital signals • HDMI uses a technology called Transition-Minimized Differential Signalling (TMDS)

Q3
Oct/Nov 2024 Paper 1 v1

A computer system has a dual-core Central Processing Unit (CPU).

(a) State the purpose of the system clock and the Control Unit (CU) in a CPU. 2 marks

System clock

CU

(b) (i) The number of cores in the processor affects the performance of the computer system. 2 marks

Identify one other feature of a processor that can affect the performance of a computer system and state why it affects the performance.

Feature

Reason

(ii) A solid state (flash) memory drive is automatically recognised by the computer when it is plugged into a port in the computer. 3 marks

Identify an appropriate type of port to connect the solid state memory drive to the computer.

Explain how this port provides an automatic connection.

Port

Explanation

A computer system has a dual-core Central Processing Unit (CPU). ### (a) State the purpose of the system clock and the Control Unit (CU) in a CPU. <span class="part-marks">2 marks</span> System clock CU ### (b) (i) The number of cores in the processor affects the performance of the computer system. <span class="part-marks">2 marks</span> Identify one other feature of a processor that can affect the performance of a computer system and state why it affects the performance. Feature Reason #### (ii) A solid state (flash) memory drive is automatically recognised by the computer when it is plugged into a port in the computer. <span class="part-marks">3 marks</span> Identify an appropriate type of port to connect the solid state memory drive to the computer. Explain how this port provides an automatic connection. Port Explanation
Show mark scheme

3(a) [2 marks]

1 mark for system clock and 1 mark for Control Unit System clock • To synchronise operations • ... by creating and transmitting timing signals on the control bus Control Unit • Sends/receives control signals along control bus • Reads an instruction from the contents of the memory location whose address is stored in PC • Coordinates/synchronises the activity of other components in the CPU • Manages the execution of instructions • Controls communication between the components in the CPU

3(b)(i) [2 marks]

1 mark for the feature, 1 mark max for the matching reason e.g. Feature: clock speed • Higher clock speed means that more F-E cycles are executed per second // Higher clock speed results in more throughput Feature: bus width • Larger bus width means that more data transferred at the same time

3(b)(ii) [3 marks]

1 mark for correct port. 2 marks for explanation Port: USB / Universal Serial Bus Explanation: • A voltage change occurs when the drive is plugged in • The computer detects this voltage change • The code of the device is transferred to computer • … the OS finds the code of the device in the list of devices • … and loads the appropriate device driver

3(c) [2 marks]

1 mark for each bullet point ( max 2 ) e.g. • DRAM requires constant refresh cycles unlike SRAM • DRAM has lower access speed than SRAM

3(d)(i) [4 marks]

1 mark for each bullet point ( max 4 ) • The disc is spun at high speed • A laser is shone onto the disc to read / write • … using optical head to move it into position • … it follows the spiral track from the centre outwards • When writing the laser burns pits to represent the data • When reading the laser reflects from pits and lands • The reflection from a pit and a land is different • ... the differences are interpreted as 1 or 0

3(d)(ii) [3 marks]

1 mark for each bullet point ( max 3 ) The computer and optical disc reader/writer send and receive at different • speeds • A buffer allows temporary storage of the data • … so that the computer can transfer data to the buffer at the higher speed • ... and is not held up waiting for data to transfer // so the computer can carry on with other tasks • ... so the optical disc reader/writer is not overloaded • … and so that data is transferred to optical disc reader/writer from the buffer at the slower rate

Q8
Oct/Nov 2024 Paper 1 v1

A computer designed using the Von Neumann model for a computer system contains general purpose registers and special purpose registers.

(a) Describe the purpose of the Status Register (SR). 2 marks

(b) Identify two differences between general purpose registers and special purpose registers. 2 marks

1

2

A computer designed using the Von Neumann model for a computer system contains general purpose registers and special purpose registers. ### (a) Describe the purpose of the Status Register (SR). <span class="part-marks">2 marks</span> ### (b) Identify two differences between general purpose registers and special purpose registers. <span class="part-marks">2 marks</span> 1 2
Show mark scheme

8(a) [2 marks]

1 mark for each bullet point ( max 2 ) • To store the value of flags/bits • … that can be changed/set/cleared after arithmetic / logical operations • To allow flags to be checked • … to change instruction sequence

8(b) [2 marks]

1 mark for each bullet point ( max 2 ) • Special purpose registers have a specified role in the machine whereas general purpose registers can be used for all purposes defined by the programmer • Special purpose registers hold the state of the program’s execution while general purpose registers hold the program’s data during operations

Q5
Oct/Nov 2023 Paper 1 v1

The Central Processing Unit (CPU) of the basic Von Neumann model for a computer system contains several special purpose registers.

(a) The Memory Data Register (MDR), Index Register (IX) and the Accumulator (ACC) are examples of special purpose registers. 4 marks

Identify two other special purpose registers and state their role in the CPU.

Special purpose register 1

Role

Special purpose register 2

Role

(b) Describe what is meant by the Immediate Access Store (IAS) in a computer system. 2 marks

(c) A computer has a single 2.1 GHz CPU.

(i) Describe how increasing the clock speed to 4 GHz can increase the performance of the computer. 1 mark

(ii) A second computer has a CPU with two 2.1 GHz cores. 5 marks

Explain why the second computer does not always run twice as fast as the computer with one 2.1 GHz CPU.

The Central Processing Unit (CPU) of the basic Von Neumann model for a computer system contains several special purpose registers. ### (a) The Memory Data Register (MDR), Index Register (IX) and the Accumulator (ACC) are examples of special purpose registers. <span class="part-marks">4 marks</span> Identify **two other** special purpose registers **and** state their role in the CPU. Special purpose register 1 Role Special purpose register 2 Role ### (b) Describe what is meant by the **Immediate Access Store (IAS)** in a computer system. <span class="part-marks">2 marks</span> ### (c) A computer has a single 2.1 GHz CPU. #### (i) Describe how increasing the clock speed to 4 GHz can increase the performance of the computer. <span class="part-marks">1 mark</span> #### (ii) A second computer has a CPU with two 2.1 GHz cores. <span class="part-marks">5 marks</span> Explain why the second computer does not always run twice as fast as the computer with one 2.1 GHz CPU.
Show mark scheme

5(a) [4 marks]

1 mark for identification of the register and 1 mark for role ( max 2 for each register) • Program Counter (PC) • stores the address where the next instruction is to be read from • Memory Address Register (MAR) • stores the address of the memory location (or an I/O component) currently being read from or written to • Current Instruction Register (CIR) • holds the instruction currently being decoded and/or executed • Status Register • Contains bits which can be referenced individually and set or cleared depending on the operation e.g. overflow, underflow

5(b) [2 marks]

1 mark for each bullet point ( max 2 ) • Immediate Access Store holds all the data / instructions / programs currently in use • Immediate Access Store is volatile memory • Immediate Access Store has fast access times

5(c)(i) [1 mark]

1 mark for each bullet point ( max 1 ) • The CPU can now perform nearly twice as many F-E cycles per second • Instead of 2.1 billion F-E cycles per second, the CPU can now perform 4 billion FE cycles per second

5(c)(ii) [5 marks]

1 mark for each bullet point ( max 5 ) • Multiple cores introduce additional overheads • …because of the need for communication between cores • Software may not be designed for multiple cores… • …so one of the cores will be left idle • Memory access speed may not match speed of cores… • …so causing delay • The two computers may have more differences than just the cores • …one may have more RAM which allows faster multitasking • ...one may have a GPU • ...etc.

Q9
Oct/Nov 2023 Paper 1 v3

A computer system is designed using the basic Von Neumann model.

Registers and buses are components in the Von Neumann model.

(a) (i) Identify three other components in the Von Neumann model of a computer system. 3 marks

Do not include registers or buses in your answers.

1

2

3

(ii) Identify two differences between special purpose registers and general purpose registers. 2 marks

1

2

(b) The following incomplete table contains steps of the Fetch‑Execute (F‑E) cycle and their descriptions. 4 marks

Complete the table by writing the missin missing descriptions. ng steps using register transfer notation and the
Step Description
______ The address in PC is incremented.
MDR
[[MAR]]


______
MAR
[PC]


______
______ The contents of MDR are copied into CIR.

(c) Interrupts can be caused by software programs or hardware devices. 1 mark

State one cause of a software interrupt.

(d) The following statements describe the stages that the CPU performs when an interrupt is detected. 3 marks

There are three missing statements.

Write the letter of the missing statements from the table in the correct place to complete the description.

1 At the end of each Fetch‑Execute (F‑E) cycle, the processor checks if an interrupt flag is set.

2

3 If the interrupt priority is high enough, the processor saves the current contents of the registers.

4

5 When servicing of the interrupt is complete, the processor restores the registers.

6

Letter Stage
A The address of the Interrupt Service (ISR) handling routine is loaded into the
Program Counter (PC).
B Lower priority interrupts are re‑enabled.
C The device causing the interrupt transfers data to the CPU.
D The processor identifies the source of the interrupt and checks the priority of
the interrupt.
E The ISR is incremented.
A computer system is designed using the basic Von Neumann model. Registers and buses are components in the Von Neumann model. **(a) (i)** Identify **three other** components in the Von Neumann model of a computer system. <span class="part-marks">3 marks</span> Do not include registers or buses in your answers. 1 2 3 #### (ii) Identify **two** differences between special purpose registers and general purpose registers. <span class="part-marks">2 marks</span> 1 2 ### (b) The following incomplete table contains steps of the Fetch‑Execute (F‑E) cycle and their descriptions. <span class="part-marks">4 marks</span> |Complete the table by writing the missin missing descriptions.|ng steps using register transfer notation and the| |---|---| |**Step**|**Description**| |______|The address in PC is incremented.| |`MDR`<br>` [[MAR]]`|______<br>______<br>______| |`MAR`<br>` [PC]`|______<br>______<br>______| |______|The contents of MDR are copied into CIR.| ### (c) Interrupts can be caused by software programs or hardware devices. <span class="part-marks">1 mark</span> State **one** cause of a software interrupt. ### (d) The following statements describe the stages that the CPU performs when an interrupt is detected. <span class="part-marks">3 marks</span> There are **three** missing statements. Write the letter of the missing statements from the table in the correct place to complete the description. 1 At the end of each Fetch‑Execute (F‑E) cycle, the processor checks if an interrupt flag is set. 2 3 If the interrupt priority is high enough, the processor saves the current contents of the registers. 4 5 When servicing of the interrupt is complete, the processor restores the registers. 6 |Letter|Stage| |---|---| |**A**|The address of the Interrupt Service (ISR) handling routine is loaded into the<br>Program Counter (PC).| |**B**|Lower priority interrupts are re‑enabled.| |**C**|The device causing the interrupt transfers data to the CPU.| |**D**|The processor identifies the source of the interrupt and checks the priority of<br>the interrupt.| |**E**|The ISR is incremented.|
Show mark scheme

9(a)(i) [3 marks]

1 mark for each bullet point ( max 3 ). • Control unit (CU) • Arithmetic and Logic Unit (ALU) • Immediate Access Store (IAS) • (System clock)

9(a)(ii) [2 marks]

1 mark for each bullet point ( max 2 ). • Special purpose registers hold the status of a program whereas general purpose registers hold the temporary data while performing operations. • Special purpose registers are specialised for a specific use, whereas general purpose registers are used for any purpose. • General purpose registers can be used by most instructions, whereas special purpose can only be used by certain instruction

9(b) [4 marks]

1 mark for each correct answer (shaded cells) Step Description  The address in PC is incremented. PC [PC] + 1 The data in the location pointed to by the MAR  MDR [[MAR]] is copied to the MDR.  The contents of PC are copied to the MAR. MAR [PC]  The contents of MDR are copied into CIR. CIR [MDR]

9(c) [1 mark]

1 mark for an appropriate example. Examples: • Division by zero • Runtime error • Out of memory bounds • Program requesting an external device / input • Buffer overflow

9(d) [3 marks]

1 mark for each letter in the correct position (2, 4 and 6)

Q6
May/Jun 2023 Paper 1 v1

An interrupt is generated when a key is pressed on a computer keyboard.

Explain how the computer handles this interrupt. 5 marks

An interrupt is generated when a key is pressed on a computer keyboard. Explain how the computer handles this interrupt. <span class="part-marks">5 marks</span>
Show mark scheme

6 [5 marks]

1 mark each to max 5  An interrupt flag is raised in the (interrupt) register  At the end of the current FE cycle // at the start of the next FE cycle  The system checks the interrupt register for higher priority interrupts than current process  If true, it stores the current contents of the registers on the stack  The appropriate interrupt service routine (ISR) for the key press is called  The input data from the keyboard is processed  The contents of the registers are restored from the stack  ... and control is passed back to previous process

Q5
May/Jun 2023 Paper 1 v2

A student has purchased a new laptop.

(a) The laptop is designed using the Von Neumann model for a computer system. 2 marks

Identify two types of signal that a control bus can transfer.

1

2

(b) Describe two ways the hardware of a laptop can be upgraded to improve the performance and explain how each upgrade improves the performance. 4 marks

1

2

(c) Peripherals are connected to the laptop using ports.

(i) A printer is connected to a Universal Serial Bus (USB) port. 1 mark

Describe how data is transmitted through a USB port.

(ii) A monitor is connected to the laptop using a different type of port. 1 mark

Identify one other type of port that can be used to connect the monitor.

(d) The laptop has systems software.

(i) Describe how the Operating System (OS) manages processes in the computer. 5 marks

(ii) Describe the purpose of utility software in a computer. 2 marks

A student has purchased a new laptop. ### (a) The laptop is designed using the Von Neumann model for a computer system. <span class="part-marks">2 marks</span> Identify **two** types of signal that a control bus can transfer. 1 2 ### (b) Describe **two** ways the hardware of a laptop can be upgraded to improve the performance **and** explain how each upgrade improves the performance. <span class="part-marks">4 marks</span> 1 2 ### (c) Peripherals are connected to the laptop using ports. #### (i) A printer is connected to a Universal Serial Bus (USB) port. <span class="part-marks">1 mark</span> Describe how data is transmitted through a USB port. #### (ii) A monitor is connected to the laptop using a different type of port. <span class="part-marks">1 mark</span> Identify **one** other type of port that can be used to connect the monitor. ### (d) The laptop has systems software. #### (i) Describe how the Operating System (OS) manages processes in the computer. <span class="part-marks">5 marks</span> #### (ii) Describe the purpose of utility software in a computer. <span class="part-marks">2 marks</span>
Show mark scheme

5(a) [2 marks]

1 mark each to max 2 Examples:  Interrupt  Timing  Read  Write

5(b) [4 marks]

1 mark for description; 1 mark for corresponding explanation Examples  Increase number of cores  Each core can independently carry out a process at the same time // so that more instructions are performed in parallel  Increase RAM capacity  ... allowing more applications to reside in memory at the same time, saving disk access times  Increase cache memory  More data can be stored in fast access so less time is spent accessing from RAM  Increase clock speed  More Fetch-Decode-Execute (FDE) cycles can run each second / per unit time

5(c)(i) [1 mark]

1 mark for a correct answer  1 bit is transferred at a time  Can be synchronous or asynchronous  earlier versions are half-duplex USB-3 is full duplex and

5(c)(ii) [1 mark]

1 mark for identification of a suitable port Examples  HDMI  DisplayPort

5(d)(i) [5 marks]

1 mark each to max 5  Manages the scheduling of processes // decides which order to run processes  Manages which resources the processes require  … such as allocating memory  Enables processes to share data  Prevents interference between processes // resolution of conflicts  Handles the process queue  It allows multi-tasking / multi-processing  ... by ensuring fair access, handling priorities and handling interrupts

5(d)(ii) [2 marks]

1 mark each to max 2  To help users to set-up / configure / analyse / optimise / maintain the computer ...  ... by for example, making memory allocation more efficient  ... by for example, checking the system for faults

Q7
May/Jun 2023 Paper 1 v3

A computer stores data in binary form.

(a) Draw one line from each description to its matching denary value.

Description Denary value

  • 127

The smallest integer that can be represented in 8-bit two’s complement.

The largest integer that can be represented in 8-bit two’s complement.

The largest unsigned integer that can be represented in 8 bits.

(b) The computer has a Control Unit (CU), system clock and control bus. 3 marks 4 marks 2 marks

127

  • 255

  • 128

  • 256

256

128

255 Explain how the CU, system clock and control bus operate to transfer data between the components of the computer system.

Complete the table by writing the regist Fetch-Execute (F-E) cycle given in the table. ter transfer notation for each stage of the
Stage description Register transfer notation
The Program Counter (PC) is incremented ______
The data in the address stored in the
Memory Address Register (MAR) is copied
to the Memory Data Register (MDR)
______
A computer stores data in binary form. ### (a) Draw **one** line from each description to its matching denary value. **Description** **Denary value** - 127 The smallest integer that can be represented in 8-bit two’s complement. The largest integer that can be represented in 8-bit two’s complement. The largest unsigned integer that can be represented in 8 bits. ### (b) The computer has a Control Unit (CU), system clock and control bus. <span class="part-marks">3 marks</span> <span class="part-marks">4 marks</span> <span class="part-marks">2 marks</span> 127 - 255 - 128 - 256 256 128 255 Explain how the CU, system clock and control bus operate to transfer data between the components of the computer system. |Complete the table by writing the regist Fetch-Execute (F-E) cycle given in the table.|ter transfer notation for each stage of the| |---|---| |**Stage description**|**Register transfer notation**| |The Program Counter (PC) is incremented|______| |The data in the address stored in the<br>Memory Address Register (MAR) is copied<br>to the Memory Data Register (MDR)|______|
Show mark scheme

7(a) [4 marks]

1 mark for each correct line Description Denary value  The smallest integer that can 127 be represented in 8-bit two's complement. 127  255  128 The largest integer that can be represented in 8-bit two's  256 complement. 256 128 The largest unsigned integer that can be represented in 8 255 bits.

7(b)

1 mark each to max 4  The system clock gives out timing signals  … which are sent on the control bus  …to synchronise the other system components  The Control Unit initiates data transfer  …by generating signals that are sent on the control bus to other components

7(c) [2 marks]

1 mark for each Register transfer notation Stage description Register transfer notation  The Program Counter (PC) is PC [PC] + 1 incremented  The data in the address stored in the MDR [[MAR]] Memory Address Register (MAR) is copied to the Memory Data Register (MDR)

Q3
Oct/Nov 2022 Paper 1 v2

(a) A greenhouse has an automatic window. 3 marks

The window (X) op perates according to the follow wing criteria:
Parameter Description of parameter Binary value Condition
T Temperature 1 Too high
T Temperature 0 Acceptable
W Wind speed 1 Too high
W Wind speed 0 Acceptable
R Rain 1 Detected
R Rain 0 Not detected
M Manual override 1 On
M Manual override 0 Off

The window opens ( X = 1) if:

  • the temperature is too high and the wind speed is acceptable

  • and

  • rain is not detected, or the manual override is off.

Draw a logic circuit to represent the operation of the window.

T

W

R

M

X

### (a) A greenhouse has an automatic window. <span class="part-marks">3 marks</span> |The window (X) op|perates according to the follow|wing criteria:|| |---|---|---|---| |**Parameter**|**Description of parameter**|**Binary value**|**Condition**| |**T**|Temperature|1|Too high| |**T**|Temperature|0|Acceptable| |**W**|Wind speed|1|Too high| |**W**|Wind speed|0|Acceptable| |**R**|Rain|1|Detected| |**R**|Rain|0|Not detected| |**M**|Manual override|1|On| |**M**|Manual override|0|Off| The window opens ( **X** = 1) if: - the temperature is too high **and** the wind speed is acceptable - **and** - rain is not detected, **or** the manual override is off. Draw a logic circuit to represent the operation of the window. **T** **W** **R** **M** **X** ![](../images/w22_12_q3_fig1.png)
Show mark scheme

3(a) [3 marks]

1 mark for T AND NOT W 1 mark for NOT R OR NOT M 1 mark for final AND X

3(b) [2 marks]

1 mark for each set of rows as highlighted: 0 0 0 1 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 0

3(c) [2 marks]

1 mark for each bullet point: • to store data that does not change • data must be stored even when device is without power • to store boot up instructions / system software / firmware / BIOS

Q3
Oct/Nov 2022 Paper 1 v3

Draw one line from each Operating System (OS) management task to its most appropriate description.

OS Management task

hardware management

security management

memory management

process management

Description

dynamically allocates memory to processes

marks unallocated file storage for availability

installs programs for devices connected to external ports

validates user and process authenticity

allows processes to transfer data to and from each other 4 marks

Draw **one** line from each Operating System (OS) management task to its most appropriate description. **OS Management task** hardware management security management memory management process management **Description** dynamically allocates memory to processes marks unallocated file storage for availability installs programs for devices connected to external ports validates user and process authenticity allows processes to transfer data to and from each other <span class="part-marks">4 marks</span>
Show mark scheme

3 [4 marks]

1 mark for each correct line: OS Management task Description dynamically allocates memory to processes hardware management marks unallocated file storage for availability security management installs programs for devices connected to external ports memory management validates user and process authenticity process management allows processes to transfer data to and from each other

Q6
May/Jun 2022 Paper 1 v1

(a) A computer system is designed using the basic Von Neumann model.

(i) Describe the role of the registers in the Fetch-Execute (F-E) cycle. 5 marks

(ii) Describe when interrupts are detected in the F-E cycle and how the interrupts are handled. 5 marks

Detected

Handled

(b) Identify one factor that can affect the performance of the computer system and state how it impacts the performance. 2 marks

Factor

Impact Question 6 continues on the next page.

(c) The table shows part of the instruction set for a processor. The processor has one general purpose register, the Accumulator (ACC).

Instruction Explanation
Opcode Operand Operand
AND #n Bitwise AND operation of the contents of ACC with the operand
XOR #n Bitwise XOR operation of the contents of ACC with the operand
OR #n Bitwise OR operation of the contents of ACC with the operand
LSL #n Bits in ACC are shifted logically n places to the left. Zeros are
introduced on the right hand end
LSR #n Bits in ACC are shifted logically n places to the right. Zeros are
introduced on the left hand end
# denotes a denary number, e.g. #123 # denotes a denary number, e.g. #123 # denotes a denary number, e.g. #123

(i) Complete the register to show the result after the instruction AND #2 is executed. 1 mark

Register before: 0 1 1 0 1 1 0 1

Register after:

(ii) Complete the register to show the result after the instruction OR #8 is executed. 1 mark

Register before: 0 1 1 0 1 1 0 1

Register after:

(iii) Complete the register to show the result after the operation LSL #4 is executed. 1 mark

Register before: 0 1 1 0 1 1 0 1

Register after:

### (a) A computer system is designed using the basic Von Neumann model. #### (i) Describe the role of the registers in the Fetch-Execute (F-E) cycle. <span class="part-marks">5 marks</span> #### (ii) Describe when interrupts are detected in the F-E cycle **and** how the interrupts are handled. <span class="part-marks">5 marks</span> Detected Handled ### (b) Identify **one** factor that can affect the performance of the computer system **and** state how it impacts the performance. <span class="part-marks">2 marks</span> Factor Impact **Question 6 continues on the next page.** ### (c) The table shows part of the instruction set for a processor. The processor has one general purpose register, the Accumulator (ACC). |Instruction||Explanation| |---|---|---| |**Opcode**|**Operand**|**Operand**| |`AND `|`#n`|Bitwise AND operation of the contents of ACC with the operand| |`XOR `|`#n`|Bitwise XOR operation of the contents of ACC with the operand| |`OR `|`#n`|Bitwise OR operation of the contents of ACC with the operand| |`LSL `|`#n`|Bits in ACC are shifted logically n places to the left. Zeros are<br>introduced on the right hand end| |`LSR `|`#n`|Bits in ACC are shifted logically n places to the right. Zeros are<br>introduced on the left hand end| |# denotes a denary number, e.g. #123|# denotes a denary number, e.g. #123|# denotes a denary number, e.g. #123| #### (i) Complete the register to show the result **after** the instruction `AND #2` is executed. <span class="part-marks">1 mark</span> Register before: 0 1 1 0 1 1 0 1 Register after: #### (ii) Complete the register to show the result **after** the instruction `OR #8` is executed. <span class="part-marks">1 mark</span> Register before: 0 1 1 0 1 1 0 1 Register after: #### (iii) Complete the register to show the result **after** the operation `LSL #4` is executed. <span class="part-marks">1 mark</span> Register before: 0 1 1 0 1 1 0 1 Register after:
Show mark scheme

6(a)(i) [5 marks]

1 mark per bullet point to max 5  The Program Counter (PC) holds the address of the next instruction …  …and the contents are incremented / changed to the next address each cycle  The Memory Address Register (MAR) holds the address to fetch the data (from the PC)  The Memory Data Register (MDR) holds the data at the address in MAR  The instruction is transferred to Current Instruction Register (CIR) for decoding and execution

6(a)(ii) [5 marks]

1 mark for detection  At the start/end of a FE cycle 1 mark for handling to max 4  Priority is checked  If lower priority than current process continue with F-E cycle  If higher priority than current process …  … state of current process is / registers are stored on stack  Location / type of interrupt identified...  …appropriate ISR is called to handle the interrupt  When ISR finished, check for further interrupts (of high priority) / return to step 1  Otherwise load data from stack and continue with process

6(b) [2 marks]

1 mark for factor 1 mark for impact e.g.  Clock speed…  …higher clock speed means more FE cycles per second  Number of cores…  …means more instructions can be carried out simultaneously  Bus width …  …allows the transfer of more data each time // allows more memory locations to be directly accessed  Cache …  … the higher capacity the more frequently used instructions it can store for fast access

6(c)(i) [1 mark]

0000 0000

6(c)(ii) [1 mark]

0110 1101

6(c)(iii) [1 mark]

1101 0000

Q2
May/Jun 2022 Paper 1 v3

(a) The Fetch-Execute (F-E) cycle is represented in register transfer notation. 3 marks

Describe each of the given steps.

Step Description
PC
[PC] + 1


______
MDR
[[MAR]]


______
MAR
[PC]


______

(b) Explain how interrupts are handled during the F-E cycle. 5 marks

### (a) The Fetch-Execute (F-E) cycle is represented in register transfer notation. <span class="part-marks">3 marks</span> Describe each of the given steps. |Step|Description| |---|---| |`PC`<br> `[PC] + 1`|______<br>______<br>______| |`MDR`<br> `[[MAR]]`|______<br>______<br>______| |`MAR`<br> `[PC]`|______<br>______<br>______| ### (b) Explain how interrupts are handled during the F-E cycle. <span class="part-marks">5 marks</span>
Show mark scheme

2(a) [3 marks]

1 mark for each correct description Step Description  Address in PC is incremented PC [PC] + 1  The data in the address held in the MAR is copied MDR [[MAR]] to the MDR  The contents of the PC are copied to the MAR MAR [PC]

2(b) [5 marks]

1 mark per point to max 5  Check for interrupt at start/end of an F-E cycle  Priority is checked  If lower priority than current process continue with F-E cycle  If higher priority than current process …  … state of current process is / registers are stored on stack  Location/type of interrupt identified  Appropriate ISR is called to handle the interrupt  When ISR finished, check for further interrupts (of higher priority) / return to step 1  Otherwise load data from stack and continue with next F-E cycle (of process)

Q6
Oct/Nov 2021 Paper 1 v1

(a) There are two errors in the following register transfer notation for the fetch‑execute cycle. 4 marks

      1 MAR [PC]

2 PC [PC] − 1

      3 MDR  [MAR]
      4 CIR  [MDR]

Complete the following table by:

  • identifying the line number of each error

  • describing the error

  • writing the correct statement.

    Line
    number
    Description of the error Correct statement

(b) The following table shows part of the instruction set for a processor. The processor has one general purpose register, the Accumulator (ACC), and an Index Register (IX). 4 marks

Instruction Explanation
Opcode Operand Operand
LDM #n Immediate addressing. Load the number n to ACC
LDD <address> Direct addressing. Load the contents of the location at the given address to
ACC
STO <address> Store the contents of ACC at the given address
INC <register> Add 1 to the contents of the register (ACC or IX)
CMP <address> Compare the contents of ACC with the contents of
JPN <address> Following a compare instruction, jump to
if the compare was False
JMP <address> Jump to the given address
IN Key in a character and store its ASCII value in ACC
OUT Output to the screen the character whose ASCII value is stored in ACC
END Return control to the operating system
XOR #n Bitwise XOR operation of the contents of ACC with the operand
XOR <address> Bitwise XOR operation of the contents of ACC with the contents of
AND #n Bitwise AND operation of the contents of ACC with the operand
AND <address> Bitwise AND operation of the contents of ACC with the contents of
OR #n Bitwise OR operation of the contents of ACC with the operand
OR <address> Bitwise OR operation of the contents of ACC with the contents of
LSL #n Bits in ACC are shifted logically n places to the left. Zeros are introduced on
the right hand end
LSR #n Bits in ACC are shifted logically n places to the right. Zeros are introduced on
the left hand end
can be an absolute or symbolic address
# denotes a denary number, e.g. #123
B denotes a binary number, e.g. B01001101
can be an absolute or symbolic address
# denotes a denary number, e.g. #123
B denotes a binary number, e.g. B01001101
can be an absolute or symbolic address
# denotes a denary number, e.g. #123
B denotes a binary number, e.g. B01001101

The current contents of main memory are shown:

Address Data

        100 00001111
        101 11110000
        102 01010101
        103 11111111
        104 00000000

Each row of the following table shows the current contents of ACC in binary and the instruction that will be performed on those contents.

Complete the table by w instruction. writing the new contents of the A ACC after the execution of each
Current contents of the ACC Instruction New contents of the ACC
11111111 OR 101
00000000 XOR #15
10101010 LSR #2
01010101 AND 104
### (a) There are **two** errors in the following register transfer notation for the fetch‑execute cycle. <span class="part-marks">4 marks</span> ``` 1 MAR [PC] ``` `2` `PC` [PC] − 1 ``` 3 MDR [MAR] 4 CIR [MDR] ``` Complete the following table by: - identifying the line number of each error - describing the error - writing the correct statement. |Line<br>number|Description of the error|Correct statement| |---|---|---| |||| |||| ### (b) The following table shows part of the instruction set for a processor. The processor has one general purpose register, the Accumulator (ACC), and an Index Register (IX). <span class="part-marks">4 marks</span> |Instruction||Explanation| |---|---|---| |**Opcode**|**Operand**|**Operand**| |`LDM`|`#n`|Immediate addressing. Load the number n to ACC| |`LDD`|`<address>`|Direct addressing. Load the contents of the location at the given address to<br>ACC| |`STO`|`<address>`|Store the contents of ACC at the given address| |`INC`|`<register>`|Add 1 to the contents of the register (ACC or IX)| |`CMP`|`<address>`|Compare the contents of ACC with the contents of <address>| |`JPN`|`<address>`|Following a compare instruction, jump to <address> if the compare was False| |`JMP`|`<address>`|Jump to the given address| |`IN`||Key in a character and store its ASCII value in ACC| |`OUT`||Output to the screen the character whose ASCII value is stored in ACC| |`END`||Return control to the operating system| |`XOR`|`#n`|Bitwise XOR operation of the contents of ACC with the operand| |`XOR`|`<address>`|Bitwise XOR operation of the contents of ACC with the contents of <address>| |`AND`|`#n`|Bitwise AND operation of the contents of ACC with the operand| |`AND`|`<address>`|Bitwise AND operation of the contents of ACC with the contents of <address>| |`OR`|`#n`|Bitwise OR operation of the contents of ACC with the operand| |`OR`|`<address>`|Bitwise OR operation of the contents of ACC with the contents of <address>| |`LSL`|`#n`|Bits in ACC are shifted logically n places to the left. Zeros are introduced on<br>the right hand end| |`LSR`|`#n`|Bits in ACC are shifted logically n places to the right. Zeros are introduced on<br>the left hand end| |<address> can be an absolute or symbolic address<br># denotes a denary number, e.g. #123<br>B denotes a binary number, e.g. B01001101|<address> can be an absolute or symbolic address<br># denotes a denary number, e.g. #123<br>B denotes a binary number, e.g. B01001101|<address> can be an absolute or symbolic address<br># denotes a denary number, e.g. #123<br>B denotes a binary number, e.g. B01001101| The current contents of main memory are shown: **Address** **Data** ``` 100 00001111 101 11110000 102 01010101 103 11111111 104 00000000 ``` Each row of the following table shows the current contents of ACC in binary and the instruction that will be performed on those contents. |Complete the table by w instruction.|writing the new contents of the A|ACC after the execution of each| |---|---|---| |**Current contents of the ACC**|**Instruction**|**New contents of the ACC**| |`11111111`|`OR 101`|| |`00000000`|`XOR #15`|| |`10101010`|`LSR #2`|| |`01010101`|`AND 104`||
Show mark scheme

6(a) [4 marks]

1 mark for identification of line and description of error 1 mark for the correct statement Line Description of the error Correct statement number 2 Program Counter should be incremented, ← PC [PC] + 1 not decremented 3 It should be the contents of the address in ← MDR [[MAR]] the MAR

6(b) [2 marks]

1 mark for each correct row Current contents of the ACC Instruction New contents of the ACC 11111111 OR 101 11111111 00000000 XOR #15 00001111 10101010 LSR #2 00101010 01010101 AND 104 00000000

Q8
Oct/Nov 2021 Paper 1 v2

The Von Neumann model for a computer system uses registers.

(a) Describe the role of the following special purpose registers in the fetch-execute (F-E) cycle.

(i) Memory Address Register (MAR) 4 marks

Memory Data Register (MDR)

(ii) Another special purpose register is the Index Register. 1 mark

Identify one other special purpose register used in the Von Neumann model for a computer system.

(b) The following table shows part of the instruction set for a processor. The processor has one general purpose register, the Accumulator (ACC), and an Index Register (IX).

Instruction Explanation
Opcode Operand Operand
LDM #n Immediate addressing. Load the number n to ACC
LDD <address> Direct addressing. Load the contents of the location at the given address to
ACC
STO <address> Store the contents of ACC at the given address
INC <register> Add 1 to the contents of the register (ACC or IX)
CMP <address> Compare the contents of ACC with the contents of
JPN <address> Following a compare instruction, jump to
if the compare was False
JMP <address> Jump to the given address
IN Key in a character and store its ASCII value in ACC
OUT Output to the screen the character whose ASCII value is stored in ACC
END Return control to the operating system
XOR #n Bitwise XOR operation of the contents of ACC with the operand
XOR <address> Bitwise XOR operation of the contents of ACC with the contents of
OR #n Bitwise OR operation of the contents of ACC with the operand
OR <address> Bitwise OR operation of the contents of ACC with the contents of
AND #n Bitwise AND operation of the contents of ACC with the operand
AND <address> Bitwise AND operation of the contents of ACC with the contents of
LSL #n Bits in ACC are shifted logically n places to the left. Zeros are introduced on
the right hand end
LSR #n Bits in ACC are shifted logically n places to the right. Zeros are introduced on
the left hand end
can be an absolute or symbolic address
# denotes a denary number, e.g. #123
can be an absolute or symbolic address
# denotes a denary number, e.g. #123
can be an absolute or symbolic address
# denotes a denary number, e.g. #123

The current contents of main memory are shown:

Address Data

        100 01010101
        101 11110000
        102 00001111
        103 00000000
        104 11111111

(i) In the following table, each row shows the current contents of the ACC in binary and the instruction that will be performed on those contents. 4 marks

Complete the table instruction. by writing the new contents of the e ACC after the execution of each
Current contents of the ACC Instruction New contents of the ACC
01010101 XOR 101
11110000 AND 104
00001111 LSL #4
11111111 OR 102

(ii) The following table contains five assembly language instruction groups. 4 marks

Write an appropriate assembly language instruction for each instruction group, using the given instruction set. The first one has been completed for you.

Instruction Group Instruction
Data movement LDM #2
Input and output of data
Arithmetic operations
Unconditional and conditional instructions
Compare instructions

(iii) The opcode LDM uses immediate addressing. The opcode LDD uses direct addressing. 2 marks

Identify and describe one additional mode of addressing.

Mode of addressing

Description

The Von Neumann model for a computer system uses registers. ### (a) Describe the role of the following special purpose registers in the fetch-execute (F-E) cycle. #### (i) Memory Address Register (MAR) <span class="part-marks">4 marks</span> Memory Data Register (MDR) #### (ii) Another special purpose register is the Index Register. <span class="part-marks">1 mark</span> Identify **one other** special purpose register used in the Von Neumann model for a computer system. ### (b) The following table shows part of the instruction set for a processor. The processor has one general purpose register, the Accumulator (ACC), and an Index Register (IX). |Instruction||Explanation| |---|---|---| |**Opcode**|**Operand**|**Operand**| |`LDM`|`#n`|Immediate addressing. Load the number n to ACC| |`LDD`|`<address>`|Direct addressing. Load the contents of the location at the given address to<br>ACC| |`STO`|`<address>`|Store the contents of ACC at the given address| |`INC`|`<register>`|Add 1 to the contents of the register (ACC or IX)| |`CMP`|`<address>`|Compare the contents of ACC with the contents of <address>| |`JPN`|`<address>`|Following a compare instruction, jump to <address> if the compare was False| |`JMP`|`<address>`|Jump to the given address| |`IN`||Key in a character and store its ASCII value in ACC| |`OUT`||Output to the screen the character whose ASCII value is stored in ACC| |`END`||Return control to the operating system| |`XOR`|`#n`|Bitwise XOR operation of the contents of ACC with the operand| |`XOR`|`<address>`|Bitwise XOR operation of the contents of ACC with the contents of <address>| |`OR`|`#n`|Bitwise OR operation of the contents of ACC with the operand| |`OR`|`<address>`|Bitwise OR operation of the contents of ACC with the contents of <address>| |`AND`|`#n`|Bitwise AND operation of the contents of ACC with the operand| |`AND`|`<address>`|Bitwise AND operation of the contents of ACC with the contents of <address>| |`LSL`|`#n`|Bits in ACC are shifted logically n places to the left. Zeros are introduced on<br>the right hand end| |`LSR`|`#n`|Bits in ACC are shifted logically n places to the right. Zeros are introduced on<br>the left hand end| |<address> can be an absolute or symbolic address<br># denotes a denary number, e.g. #123|<address> can be an absolute or symbolic address<br># denotes a denary number, e.g. #123|<address> can be an absolute or symbolic address<br># denotes a denary number, e.g. #123| The current contents of main memory are shown: **Address** **Data** ``` 100 01010101 101 11110000 102 00001111 103 00000000 104 11111111 ``` #### (i) In the following table, each row shows the current contents of the ACC in binary and the instruction that will be performed on those contents. <span class="part-marks">4 marks</span> |Complete the table instruction.|by writing the new contents of the|e ACC after the execution of each| |---|---|---| |**Current contents of the ACC**|**Instruction**|**New contents of the ACC**| |`01010101`|`XOR 101`|| |`11110000`|`AND 104`|| |`00001111`|`LSL #4`|| |`11111111`|`OR 102`|| #### (ii) The following table contains five assembly language instruction groups. <span class="part-marks">4 marks</span> Write an appropriate assembly language instruction for each instruction group, using the given instruction set. The first one has been completed for you. |Instruction Group|Instruction| |---|---| |Data movement|`LDM #2`| |Input and output of data|| |Arithmetic operations|| |Unconditional and conditional instructions|| |Compare instructions|| #### (iii) The opcode `LDM` uses immediate addressing. The opcode `LDD` uses direct addressing. <span class="part-marks">2 marks</span> Identify **and** describe **one additional** mode of addressing. Mode of addressing Description
Show mark scheme

8(a)(i) [1 mark]

1 mark for each bullet point to max 2 for each register MAR Stores the next address to be fetched • ... held in the Program Counter (PC) • The data at this address is then fetched • MDR Stores the data from the address pointed to by the MAR • The data in it is copied to the Current Instruction Register (CIR) •

8(a)(ii)

1 mark for a correct register e.g. Program Counter (PC) Current Instruction Register (CIR) Status register Interrupt register

8(b)(i) [4 marks]

1 mark for each correct answer Current contents of New contents of Instruction the ACC the ACC 01010101 XOR 101 1010 0101 11110000 AND 104 1111 0000 00001111 LSL #4 1111 0000 11111111 OR 102 1111 1111

8(b)(ii) [4 marks]

1 mark for each correct instruction Instruction Group Instruction Data movement LDM #2 Input and output of data IN / OUT Arithmetic Operations INC ACC / INC IX Unconditional and conditional instructions JPN 100 / JMP 100 Compare instructions CMP 100

8(b)(iii) [2 marks]

1 mark for name, 1 mark for description Indirect addressing • the address to be used is at the given address • Relative addressing • the address to be used is an offset number of locations away, relative to • the address of the current instruction Indexed addressing • form the address from the given address plus the contents of the index • register

Q6
Oct/Nov 2021 Paper 1 v3

(a) There are two errors in the following register transfer notation for the fetch‑execute cycle. 4 marks

      1 MAR [PC]

2 PC [PC] − 1

      3 MDR  [MAR]
      4 CIR  [MDR]

Complete the following table by:

  • identifying the line number of each error

  • describing the error

  • writing the correct statement.

    Line
    number
    Description of the error Correct statement

(b) The following table shows part of the instruction set for a processor. The processor has one general purpose register, the Accumulator (ACC), and an Index Register (IX). 4 marks

Instruction Explanation
Opcode Operand Operand
LDM #n Immediate addressing. Load the number n to ACC
LDD <address> Direct addressing. Load the contents of the location at the given address to
ACC
STO <address> Store the contents of ACC at the given address
INC <register> Add 1 to the contents of the register (ACC or IX)
CMP <address> Compare the contents of ACC with the contents of
JPN <address> Following a compare instruction, jump to
if the compare was False
JMP <address> Jump to the given address
IN Key in a character and store its ASCII value in ACC
OUT Output to the screen the character whose ASCII value is stored in ACC
END Return control to the operating system
XOR #n Bitwise XOR operation of the contents of ACC with the operand
XOR <address> Bitwise XOR operation of the contents of ACC with the contents of
AND #n Bitwise AND operation of the contents of ACC with the operand
AND <address> Bitwise AND operation of the contents of ACC with the contents of
OR #n Bitwise OR operation of the contents of ACC with the operand
OR <address> Bitwise OR operation of the contents of ACC with the contents of
LSL #n Bits in ACC are shifted logically n places to the left. Zeros are introduced on
the right hand end
LSR #n Bits in ACC are shifted logically n places to the right. Zeros are introduced on
the left hand end
can be an absolute or symbolic address
# denotes a denary number, e.g. #123
B denotes a binary number, e.g. B01001101
can be an absolute or symbolic address
# denotes a denary number, e.g. #123
B denotes a binary number, e.g. B01001101
can be an absolute or symbolic address
# denotes a denary number, e.g. #123
B denotes a binary number, e.g. B01001101

The current contents of main memory are shown:

Address Data

        100 00001111
        101 11110000
        102 01010101
        103 11111111
        104 00000000

Each row of the following table shows the current contents of ACC in binary and the instruction that will be performed on those contents.

Complete the table by w instruction. writing the new contents of the A ACC after the execution of each
Current contents of the ACC Instruction New contents of the ACC
11111111 OR 101
00000000 XOR #15
10101010 LSR #2
01010101 AND 104
### (a) There are **two** errors in the following register transfer notation for the fetch‑execute cycle. <span class="part-marks">4 marks</span> ``` 1 MAR [PC] ``` `2` `PC` [PC] − 1 ``` 3 MDR [MAR] 4 CIR [MDR] ``` Complete the following table by: - identifying the line number of each error - describing the error - writing the correct statement. |Line<br>number|Description of the error|Correct statement| |---|---|---| |||| |||| ### (b) The following table shows part of the instruction set for a processor. The processor has one general purpose register, the Accumulator (ACC), and an Index Register (IX). <span class="part-marks">4 marks</span> |Instruction||Explanation| |---|---|---| |**Opcode**|**Operand**|**Operand**| |`LDM`|`#n`|Immediate addressing. Load the number n to ACC| |`LDD`|`<address>`|Direct addressing. Load the contents of the location at the given address to<br>ACC| |`STO`|`<address>`|Store the contents of ACC at the given address| |`INC`|`<register>`|Add 1 to the contents of the register (ACC or IX)| |`CMP`|`<address>`|Compare the contents of ACC with the contents of <address>| |`JPN`|`<address>`|Following a compare instruction, jump to <address> if the compare was False| |`JMP`|`<address>`|Jump to the given address| |`IN`||Key in a character and store its ASCII value in ACC| |`OUT`||Output to the screen the character whose ASCII value is stored in ACC| |`END`||Return control to the operating system| |`XOR`|`#n`|Bitwise XOR operation of the contents of ACC with the operand| |`XOR`|`<address>`|Bitwise XOR operation of the contents of ACC with the contents of <address>| |`AND`|`#n`|Bitwise AND operation of the contents of ACC with the operand| |`AND`|`<address>`|Bitwise AND operation of the contents of ACC with the contents of <address>| |`OR`|`#n`|Bitwise OR operation of the contents of ACC with the operand| |`OR`|`<address>`|Bitwise OR operation of the contents of ACC with the contents of <address>| |`LSL`|`#n`|Bits in ACC are shifted logically n places to the left. Zeros are introduced on<br>the right hand end| |`LSR`|`#n`|Bits in ACC are shifted logically n places to the right. Zeros are introduced on<br>the left hand end| |<address> can be an absolute or symbolic address<br># denotes a denary number, e.g. #123<br>B denotes a binary number, e.g. B01001101|<address> can be an absolute or symbolic address<br># denotes a denary number, e.g. #123<br>B denotes a binary number, e.g. B01001101|<address> can be an absolute or symbolic address<br># denotes a denary number, e.g. #123<br>B denotes a binary number, e.g. B01001101| The current contents of main memory are shown: **Address** **Data** ``` 100 00001111 101 11110000 102 01010101 103 11111111 104 00000000 ``` Each row of the following table shows the current contents of ACC in binary and the instruction that will be performed on those contents. |Complete the table by w instruction.|writing the new contents of the A|ACC after the execution of each| |---|---|---| |**Current contents of the ACC**|**Instruction**|**New contents of the ACC**| |`11111111`|`OR 101`|| |`00000000`|`XOR #15`|| |`10101010`|`LSR #2`|| |`01010101`|`AND 104`||
Show mark scheme

6(a) [4 marks]

1 mark for identification of line and description of error 1 mark for the correct statement Line Description of the error Correct statement number 2 Program Counter should be incremented, ← PC [PC] + 1 not decremented 3 It should be the contents of the address in ← MDR [[MAR]] the MAR

6(b) [2 marks]

1 mark for each correct row Current contents of the ACC Instruction New contents of the ACC 11111111 OR 101 11111111 00000000 XOR #15 00001111 10101010 LSR #2 00101010 01010101 AND 104 00000000

Q3
May/Jun 2021 Paper 1 v1

A processor has one general purpose register, the Accumulator (ACC), and several special purpose registers.

(a) Complete the following description of the role of the registers in the fetch-execute cycle by writing the missing registers. 5 marks

The ______ holds the address of the next instruction

to be loaded. This address is sent to the ______ .

The ______ holds the data fetched from this address.

This data is sent to the ______ and the Control Unit

decodes the instruction’s opcode.

The ______ is incremented.

A processor has one general purpose register, the Accumulator (ACC), and several special purpose registers. ### (a) Complete the following description of the role of the registers in the fetch-execute cycle by writing the missing registers. <span class="part-marks">5 marks</span> The ______ holds the address of the next instruction to be loaded. This address is sent to the ______ . The ______ holds the data fetched from this address. This data is sent to the ______ and the Control Unit decodes the instruction’s opcode. The ______ is incremented.
Show mark scheme

3(a)

1 mark for each completed statement The Program Counter holds the address of the next instruction to be loaded. This address is sent to the Memory Address Register . The Memory Data Register holds the data fetched from this address. This data is sent to the Current Instruction Register and the Control Unit decodes the instruction’s opcode. The Program Counter is incremented.

3(b) [6 marks]

1 mark for each shaded set of values Memory address Instruction ACC IX Output address 365 366 367 368 1 3 65 66 0 200 1 201 202 203 2 204 2 205 2 206 65 207 A 208 200 2 201 202 203 3 204 3 205 3 206 66 207 B 208 200 3 201 202 209

3(c)(i) [1 mark]

1 1 0 1 0 1 0 0

3(c)(ii) [1 mark]

1 mark for correct answer The number is divided by 8 (and only whole number retained)

Q5
May/Jun 2021 Paper 1 v2

Seth uses a computer for work.

(a) Complete the following descriptions of internal components of a computer by writing the missing terms. 5 marks

The ______ transmits the signals to coordinate events based

on the electronic pulses of the ______ .

The ______ carries data to the components, while the

______ carries the address where data needs to be written to

or read from.

The ______ performs mathematical operations and

logical comparisons.

(b) Describe the ways in which the following factors can affect the performance of his laptop computer. 4 marks

Number of cores

Clock speed

(c) Seth accesses both software and data using cloud computing.

(i) Give two benefits of storing data using cloud computing. 2 marks

1

2

(ii) Give two drawbacks of Seth using cloud computing. 2 marks

1

2

(d) Draw one line from each term to its most appropriate description. 4 marks

Term Description

It is only visible to devices within the Local Area Network (LAN)

Public IP address

Private IP address

Dynamic IP address

Static IP address

It increments by 1 each time the device connects to the internet

A new one is reallocated each time a device connects to the internet

It can only be allocated to a router

It is visible to any device on the internet

It does not change each time a device connects to the internet

Seth uses a computer for work. ### (a) Complete the following descriptions of internal components of a computer by writing the missing terms. <span class="part-marks">5 marks</span> The ______ transmits the signals to coordinate events based on the electronic pulses of the ______ . The ______ carries data to the components, while the ______ carries the address where data needs to be written to or read from. The ______ performs mathematical operations and logical comparisons. ### (b) Describe the ways in which the following factors can affect the performance of his laptop computer. <span class="part-marks">4 marks</span> Number of cores Clock speed ### (c) Seth accesses both software and data using cloud computing. #### (i) Give **two** benefits of storing data using cloud computing. <span class="part-marks">2 marks</span> 1 2 #### (ii) Give **two** drawbacks of Seth using cloud computing. <span class="part-marks">2 marks</span> 1 2 ### (d) Draw **one** line from each term to its **most appropriate** description. <span class="part-marks">4 marks</span> **Term** **Description** It is only visible to devices within the Local Area Network (LAN) Public IP address Private IP address Dynamic IP address Static IP address It increments by 1 each time the device connects to the internet A new one is reallocated each time a device connects to the internet It can only be allocated to a router It is visible to any device on the internet It does not change each time a device connects to the internet
Show mark scheme

5(a)

1 mark for each term correctly inserted The control unit/bus transmits the signals to coordinate events based on the pulses of the ( system) clock . The data bus carries data to components, while the address bus carries the address where data is being written to or read from. The arithmetic logic unit/ALU performs mathematical operations and logical comparisons.

5(b) [4 marks]

1 mark per bullet point to max 3 per factor. max 4 overall. Number of cores: Each core processes one instruction per clock pulse • More/multiple cores mean that sequences of instructions can be split • between them … and so more than one instruction is executed per clock pulse // more • sequences of instructions can be run at the same time More cores decreases the time taken to complete task • Clock speed: Each instruction is executed on a clock pulse // one F-E cycle is run on • each clock pulse ... so the clock speed dictates the number of instructions that can be run • per second The faster the clock speed the more instructions can be run per second •

5(c)(i) [2 marks]

1 mark per bullet point to max 2 Cloud storage can be free (for small quantities ) • No need for separate (high capacity) storage devices // saves storage on • existing devices Can access data from any computer with internet access • Most cloud data services will have in-built backup/disaster recovery • Security could be better • Can easily increase capacity • Data can be easily shared •

5(c)(ii) [4 marks]

1 mark per bullet point to max 2 : Can only access (the cloud) with internet access • Security may not be strong // no control over security • There may not be any backups // no control over backups • It can take a long time to upload/download the data • It can be more expensive in the long term • There could be a limit to the amount of storage unless paid for • There could be compatibility/access issues • There could be issues with the company offering cloud services •

5(d)

1 mark for each correct line

Q3
May/Jun 2021 Paper 1 v3

A processor has one general purpose register, the Accumulator (ACC), and several special purpose registers.

(a) Complete the following description of the role of the registers in the fetch-execute cycle by writing the missing registers. 5 marks

The ______ holds the address of the next instruction

to be loaded. This address is sent to the ______ .

The ______ holds the data fetched from this address.

This data is sent to the ______ and the Control Unit

decodes the instruction’s opcode.

The ______ is incremented.

A processor has one general purpose register, the Accumulator (ACC), and several special purpose registers. ### (a) Complete the following description of the role of the registers in the fetch-execute cycle by writing the missing registers. <span class="part-marks">5 marks</span> The ______ holds the address of the next instruction to be loaded. This address is sent to the ______ . The ______ holds the data fetched from this address. This data is sent to the ______ and the Control Unit decodes the instruction’s opcode. The ______ is incremented.
Show mark scheme

3(a)

1 mark for each completed statement The Program Counter holds the address of the next instruction to be loaded. This address is sent to the Memory Address Register . The Memory Data Register holds the data fetched from this address. This data is sent to the Current Instruction Register and the Control Unit decodes the instruction’s opcode. The Program Counter is incremented.

3(b) [6 marks]

1 mark for each shaded set of values Memory address Instruction ACC IX Output address 365 366 367 368 1 3 65 66 0 200 1 201 202 203 2 204 2 205 2 206 65 207 A 208 200 2 201 202 203 3 204 3 205 3 206 66 207 B 208 200 3 201 202 209

3(c)(i) [1 mark]

1 1 0 1 0 1 0 0

3(c)(ii) [1 mark]

1 mark for correct answer The number is divided by 8 (and only whole number retained)