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

9 questions · 24 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.

2Multiple choice1 markSound Swap Remove

A sound wave is sampled and the amplitude of each sample is stored using 2 bits.

Identify the number of different amplitude values that can be stored for each sample.

[1 mark]
  • A2
  • B4
  • C8
  • D16
Mark scheme
  • B 4 (1)
  • The only correct answer is B. The correct answer is 4 (2 bits give 2^2 = 4 values).
  • A is not correct because 2 is the number of bits used to store each sample
  • C is not correct because 8 different amplitude values would need 3 bits
  • D is not correct because 16 different amplitude values would need 4 bits
Example answers and how they were marked
Full marks1/1

B 4

Why: Selects the only correct option (1).

No marks0/1

C 8

Why: Near miss: 8 values would need 3 bits, one more than this recording uses (0).

No marks0/1

A 2

Why: Typical misconception: 2 is the number of bits, not the number of amplitude values those bits can store (0).

3Short recall2 marksUnits & Conversion Swap Remove

Data storage is measured in binary multiples.

Define the term bit.

[2 marks]
Mark scheme

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

  • A binary digit (1)
  • Has the value 0 or 1 (1)
  • The smallest unit of data storage (1)
  • A single 0 or 1 (1)

Allow binary digit/binary place value for binary digit

Allow a single binary digit for a single 0 or 1

Do not accept a group of 8 bits/half a nibble of 4 bits, which describe a byte or a nibble

Do not accept a binary number/binary on its own

Example answers and how they were marked
Full marks2/2

A binary digit that can have the value 0 or 1.

Why: A binary digit (1) and has the value 0 or 1 (1).

Some marks1/2

It is the smallest unit of data storage.

Why: Smallest unit of data storage (1), but does not state that it is a binary digit or that it has the value 0 or 1.

No marks0/2

A group of 8 bits.

Why: Describes a byte, not a bit; no creditworthy point and named in the Do not accept line.

4Describe2 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.

5Describe2 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.

6Explain2 marksProtocols & Layers Swap Remove

Two computers exchange data over a network.

Explain why network protocols are needed for the two computers to communicate.

[2 marks]
Mark scheme

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

  • Devices (can) understand/interpret the data they receive (1) because they follow the same set of rules for communication (1)
  • Data is sent in an agreed format/structure (1) so the receiving device can interpret/understand it correctly (1)
  • Devices (can) connect/communicate successfully (1) because they agree how the data is transmitted, such as the type of signal used (1)
  • Errors (can) be detected/handled (1) because both devices follow the same rules for checking the data (1)

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

Do not accept 'so devices can talk/communicate with each other' or 'so they can understand each other' without saying they follow the same rules/agreed format.

Do not accept an answer that only states protocols are a set of rules, without saying what this allows (e.g. the data can be understood/interpreted).

Do not accept a faster connection/speed as a reason why protocols are needed.

Do not accept naming a protocol (e.g. TCP/IP, HTTP, Wi-Fi) without an explanation of why it is needed.

Do not accept a description of what a protocol does (e.g. 'TCP splits data into packets') without saying why this is needed.

Example answers and how they were marked
Full marks2/2

Devices can understand the data they receive (1) because they follow the same set of rules for communication (1).

Why: Linked point (1) and reason (1): following the same rules is what lets the devices understand the data.

Some marks1/2

Data is sent in an agreed format (1).

Why: Point (1) identified, but no linked reason saying what the agreed format achieves.

No marks0/2

Protocols are needed so the connection is faster (0) because more data can be sent at once.

Why: Speed is not a reason protocols are needed, so there is no creditworthy point or linked reason.

7Calculate2 marksAdding Binary Numbers Swap Remove

Computers manipulate binary patterns.

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

[2 marks]
1286432168421
10010101
01001111
Mark scheme

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

  • 1110 (1)
  • 0100 (1)

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

Example answers and how they were marked
Full marks2/2

1110 0100

Why: 149 + 79 = 228, carrying where a column adds to 2: both nibbles are correct (2).

Some marks1/2

1110 0101

Why: A slip in the last bit. The first nibble is correct (1); the second is not.

No marks0/2

1101 1111

Why: Writes 1 in every column with a 1 and never carries. Neither nibble is correct.

8Discuss6 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.

9Discuss6 marksLow and High Level Languages Swap Remove

A school computing club is creating a quiz game. The game will be written by students who are new to programming. It will store the names and scores of players in a list. The club wants to choose a language that helps the students finish the game quickly and with few errors.

Discuss the characteristics of a high-level programming language that make it suitable for writing the quiz game.

Your answer should include:

  • how easy the language is to learn, use and debug
  • the data structures it provides for storing the players' names and scores
  • the built-in functions and library routines it provides.
[6 marks]
Mark scheme

Indicative content

Ease of learning, use and debug

  • High-level language statements are written in English-like words and mathematical symbols, so the students can read the quiz game code and understand what each line does.
  • The language is easier to learn than a low-level language, so students who are new to programming can start writing the quiz game quickly.
  • Errors are easier to find and fix because the code is readable; for example, the students can check a line that updates a score against the rule they intended.
  • The students do not need to know how the processor carries out each statement, so they can concentrate on the quiz questions and rules.

Data structures

  • High-level languages provide lists or arrays, so the names and scores of all the players can be stored under one name and processed with a loop.
  • A record can store a player's name and score as one item; in some languages a dictionary or class can be used instead, which keeps related data together.
  • Using a data structure makes the code shorter and easier to understand than separate variables for every player's name and score.

Built-in functions and library routines

  • High-level languages provide built-in functions such as print and input, so the students can display a question and read a player's answer without writing the underlying code.
  • Library routines such as a random number generator can be used to choose quiz questions, saving the students time.
  • String-handling routines can check or compare a player's answer, so the students do not have to write these routines themselves.
  • Reusing tested routines reduces the amount of code the students write and can reduce errors in the quiz game.

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: Credit only points applied to the quiz game and the students; comparison with low-level languages is not required, but a correct contrast may support a point if it is applied. Do not award generic claims such as 'high-level programs run faster', 'work on any computer' or 'students do not need to learn syntax' unless they are justified for the quiz game.

Level 3 responses must cover all three bullet areas with linked reasoning that explains why the characteristic helps the students finish the game quickly with few errors; an answer covering only two bullet areas is limited to Level 2. Do not award the idea that high-level code is already machine code or is understood directly by the processor. Accept dictionaries or classes as equivalents of records.

Example answers and how they were marked
Full marks6/6

A high-level language is suitable for the quiz game because its statements use English-like words and mathematical symbols, so students who are new to programming can read the code and see what each part of the quiz does. This also makes the game easier to debug, because the students can compare a line that updates a player's score with the rule they intended. The language gives the students lists or arrays, so all the players' names and scores can be stored under one name, and a loop can then go through the list to display the results. A record, or a dictionary in Python, can keep one player's name and score together, which is clearer than using separate variables. The language also provides built-in functions and library routines such as input, print and a random number generator, so the students do not have to write these from scratch. They can use input to ask for a player's name and print to show the score, and a random number routine to choose a question. This lets the club spend its time on the quiz questions and rules, so the students can finish the game quickly with fewer errors.

Why: Covers all three bullet areas with linked reasoning: readable English-like statements and debugging, lists/records for names and scores, and built-in input/print/random routines, all applied to helping new students finish quickly with fewer errors. This meets Level 3.

Some marks3/6

High-level languages use English words, so the students can understand the code for the quiz game and find mistakes more easily. They provide lists or arrays, so the players' names and scores can be stored together, and a loop can be used to display the scores. This makes the game easier to write for students who are new to programming.

Why: Level 2, 3 marks: covers ease of learning/use and data structures with some application to the quiz game, but gives no built-in facilities and limited development of why this helps the club finish quickly, so it is not Level 3.

No marks0/6

High-level code is already machine code, so the computer can run the quiz game without a translator. The students do not need to learn any syntax.

Why: Contains the machine-code misconception and a generic claim that the scheme does not credit; no creditworthy point is made, so Level 0.

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.