Menu

Edexcel GCSE Computer Science (1CP2) Exam Questions

Build a practice paper from 514 exam-style questions, each with its mark scheme and example answers. Print it, or answer it on paper and then open the mark schemes. Or browse the questions by topic.

Build a paper

Topics (none ticked: all of them)
Question types (none ticked: all of them)

Practice paper

6 questions · 20 marks

Pick again
Print
1Multiple choice1 markStored Program Computers Swap Remove

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.

2Describe2 marksUtility Software Swap Remove

A student has a large number of photographs stored on a computer.

Describe the purpose of data compression software.

[2 marks]
Mark scheme

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

  • Makes a file/files smaller (1) so less storage space is needed on the disk (1)
  • Reduces the size of the data (1) so it takes less time to upload/download/transfer the file (1)
  • Compresses files/folders into a single file (1) so an attachment is under the size limit for email (1)
  • Reduces the size of the files (1) so more of them fit onto a storage device/backup media (1)

Do not accept 'it compresses the files' on its own, as this repeats the question.

Do not accept responses about protecting files from malware/viruses or about deleting files.

Example answers and how they were marked
Full marks2/2

It makes the files smaller (1) so that they use less storage space on the computer and more of them fit on the disk (1).

Why: The point (1) and a linked development giving the benefit (1).

Some marks1/2

It makes files smaller.

Why: This is the point (1) but there is no development of what the smaller size leads to, so only one mark.

No marks0/2

It protects the files from viruses so that they cannot be damaged.

Why: This describes anti-malware software, which the mark scheme does not accept; no creditworthy point is made.

3Describe2 marksLow and High Level Languages Swap Remove

A device driver is software that allows the operating system to control a piece of hardware. Device drivers are often written in a low-level programming language.

Describe one reason why a low-level programming language is suitable for writing a device driver.

[2 marks]
Mark scheme

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

  • Instructions can manipulate/control the hardware/memory/registers directly (1) so the driver can control the specific device it is written for (1)
  • The code is written for one specific processor/architecture (1) so it works with the exact hardware it will control (1)
  • The programmer controls exactly how memory/registers are used (1) so the code is efficient and needs little memory, which suits a device that has limited memory (1)
  • Each instruction maps to one machine code instruction (1) so the driver code is small enough to fit in the memory of the device (1)

Extra detail, such as naming the device the driver controls, is not needed to earn the marks.

Do not accept 'it is closer to machine code' on its own: it must be developed to show how this helps the driver, e.g. it can control the hardware directly.

Do not accept 'it is faster/quicker' with no link to the hardware/device, e.g. the device responds quickly.

Do not accept 'it is easier to learn', 'it is easier to debug' or 'it takes less time to write'.

Example answers and how they were marked
Full marks2/2

Low-level instructions can manipulate the hardware and memory directly (1) so the driver can control the specific device it was written for, such as a sound card (1).

Why: Point about direct control of hardware/memory (1) linked to controlling the specific device (1). The named device is extra detail and is not needed.

Some marks1/2

Low-level instructions can manipulate the hardware directly.

Why: Correct point (1) but no linked development saying how this helps the device driver.

No marks0/2

It is closer to machine code so it runs faster than a high-level language.

Why: 'Closer to machine code' is not developed into how this helps the driver, and 'runs faster' is not linked to the hardware/device, so no mark.

4Calculate3 marksAdding Binary Numbers Swap Remove

Binary patterns can represent numbers.

(a)

Complete the table to show the 8-bit result of the binary addition.

[2 marks]
1286432168421
11011011
11011100
Mark scheme

Award one mark for each correct nibble in the correct order:

  • 1011 (1)
  • 0111 (1)

0 marks if the response is not 8-bit binary.

Ignore a carry shown beyond the eighth bit.

Example answers and how they were marked
Full marks2/2

1011 0111

Why: 219 + 220 = 439, which needs 9 bits; the 8 bits that are kept are both correct (2).

Some marks1/2

0000 0111

Why: Forgets to carry the 1s. The second nibble is correct (1); the first is not.

No marks0/2

1101 1111

Why: Never carries. Neither nibble is correct.

(b)

State the name of the error that occurs when this addition is carried out.

[1 mark]
Mark scheme

Award one mark for:

  • overflow (error) (1)
Example answers and how they were marked
Full marks1/1

Overflow

Why: The result needs more bits than are available (1).

No marks0/1

Underflow

Why: A near miss: the result is too big for 8 bits, not too small.

No marks0/1

A syntax error

Why: A syntax error is a mistake in a program's code, not in arithmetic.

5Discuss6 marksPurpose & Function of Operating Systems Swap Remove

A home computer is used to stream music, edit a video and download files at the same time.

Discuss how the operating system manages the processes running on the computer.

Your answer should include:

  • how the CPU is shared between processes
  • the states a process can be in
  • how the operating system responds when a process needs attention
[6 marks]
Mark scheme

Indicative content

How the CPU is shared between processes

  • The operating system uses multitasking to give each process a short time slice on the CPU, so the music, video editor and download appear to run at the same time.
  • The operating system decides which ready process will run next, so one program cannot keep the CPU to itself.
  • The operating system can stop a running process and move it back to ready when its time slice ends, so all processes make progress.

The states a process can be in

  • When a program is opened, the operating system creates a process and moves its instructions into RAM so it is ready.
  • The operating system moves a ready process to running when the CPU is free.
  • A running process becomes blocked when it is waiting for input or data, such as the download waiting for data to arrive.
  • When the process finishes, the operating system terminates it and releases the resources it was using.

How the operating system responds when a process needs attention

  • An interrupt is a signal to the CPU that needs immediate attention, so the operating system suspends the current process and runs the interrupt handler.
  • A hardware interrupt could be a printer out of paper, and a software interrupt could be an error in a program.
  • After the interrupt has been handled, the operating system can return the interrupted process to the CPU.

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 at least two of scheduling, process states and interrupts.
  • A response that only states that the OS 'manages processes' or gives a program a turn, without expansion, is limited to Level 1.
Example answers and how they were marked
Full marks6/6

The OS uses multitasking to share the CPU. It gives each process, such as the music player and the video editor, a small time slice so they appear to run at the same time. It decides which ready process is next and how long it runs. When the video editor is opened, the OS creates a process and moves its instructions into RAM so it is ready; when the CPU is free it moves it to running. If the download is waiting for data, the OS marks it blocked so the CPU is not wasted. If the printer runs out of paper, a hardware interrupt tells the CPU to stop and run the interrupt handler; afterwards the OS returns to the process.

Why: Covers scheduling with time slices, process states (ready, running, blocked) and interrupts, with sustained application to the music, video editor and download. Level 3.

Some marks4/6

The operating system uses multitasking so the music and video editor can run at the same time. It gives each program a small amount of time on the CPU. When a program is opened it creates a process and puts it in RAM. If a process is waiting for input it is blocked.

Why: Covers CPU sharing and process states, with some application, but says nothing about interrupts. Level 2.

Some marks1/6

The operating system manages processes by giving each program a turn on the CPU. This stops the computer crashing when too many programs are open.

Why: Gives only a basic, undeveloped point about giving each program a turn, with no linkage or application. Level 1.

6Discuss6 marksLow and High Level Languages Swap Remove

A company is developing the firmware for a robotic vacuum cleaner. The firmware must read the distance sensors and control the motors. The vacuum cleaner has a small amount of memory.

Discuss the characteristics of a low-level programming language that make it suitable for writing the firmware.

Your answer should include:

  • control of the hardware
  • the efficiency of the code
  • the link between the language and the processor.
[6 marks]
Mark scheme

Indicative content

Control of the hardware

  • Low-level languages can read and write the contents of registers and memory addresses directly, so the firmware can take the values from the distance sensors without calling a library routine.
  • Assembly language instructions can read from and write to specific input/output ports on the vacuum cleaner's processor, so the motors can be switched on and off directly.
  • The programmer decides exactly which processor operations are carried out and in which order, which matters when the vacuum must reverse away from a step or an obstacle.
  • A low-level language puts nothing between the program and the hardware, so the programmer can control the hardware of the vacuum cleaner precisely.

Efficiency of the code

  • Assembly language code can be hand-optimised instruction by instruction, so the code that checks a sensor is as short as possible.
  • The programmer can choose which registers hold values that are used again and again, which cuts down the number of memory accesses the firmware needs.
  • A hand-written low-level program can be made compact, so it is more likely to fit in the small amount of memory the vacuum cleaner has.
  • Because each instruction does one defined job, the time taken to react to a sensor reading is predictable, which suits firmware that must not overrun.

Link between the language and the processor

  • Low-level languages are processor-specific, so the instructions used are those of the exact processor in the vacuum cleaner rather than general statements that need translating.
  • Each assembly language instruction maps to one machine code instruction, so the programmer knows precisely which processor operation will be carried out by each line of code.
  • An assembler turns each mnemonic into its machine code equivalent, so the machine code running on the vacuum cleaner's processor is exactly what the programmer wrote.
  • Code written for a different processor would have to be rewritten, which is acceptable here because the vacuum cleaner always uses the same processor.

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)

Within Level 1, award 1 mark for a single basic point and 2 marks for two or more independent basic points; Level 2 requires the points to be linked to the vacuum cleaner; Level 3 requires both control of the hardware and efficiency of the code, and a few concise, linked sentences can reach Level 3, so extra length is not required.

Accept registers, memory addresses, input/output ports, machine code and mnemonics as ways of describing access to the hardware, and accept 'a low-level language is faster' as a basic point on its own. Do not award 'binary is a low-level language' (machine code is written in binary, but binary is not a language), or characteristics of high-level languages such as being easy to read or portable, as characteristics of a low-level language.

Example answers and how they were marked
Full marks6/6

A low-level language can read and write to registers and to input/output ports directly, so the firmware can take the distance sensor readings and switch the motors without needing library routines. It can be hand-optimised instruction by instruction, so the code that checks a sensor is short and the time it takes is predictable, and a compact program is more likely to fit in the vacuum cleaner's small memory. The language is processor-specific and each assembly instruction maps to one machine code instruction, so the programmer knows exactly which operation the vacuum's processor will carry out, and the assembled machine code is exactly what they wrote.

Why: Covers all three bullets: direct control of registers and ports applied to the sensors and motors, hand-optimised compact code with predictable timing applied to the small memory, and the one-to-one link to the processor's own instruction set. Linked and applied throughout, so Level 3.

Some marks2/6

A low-level language can control the hardware directly. It can read the sensors and control the motors. It is also faster than a high-level language, so the vacuum responds quickly. This is useful because it has little memory.

Why: Three basic, independent points: direct control of the hardware applied to the sensors and motors, faster execution, and suitability for limited memory. They are asserted without development (no registers, ports or predictable timing) and the link between the language and the processor is missing, so Level 1, two or more basic points (2).

Some marks1/6

A low-level language is written in binary, so the computer can understand it directly. It is faster than a high-level language.

Why: 'Faster than a high-level language' is a creditworthy basic point (1). 'Written in binary' is not awarded, as binary itself is not a language and the do-not-award rule applies. Only one undeveloped point with no application to the vacuum cleaner, so Level 1, single basic point (1).

Questions by topic

More ways to revise Edexcel GCSE Computer Science (1CP2)

Teachers: build a paper, print it with the mark schemes at the end, and sign your school up to set your classes activities on every topic.

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