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

10 questions · 26 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 marksStored Program Computers Swap Remove

Computers use the von Neumann stored program concept.

Define the term stored program concept.

[2 marks]
Mark scheme

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

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

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

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

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

Example answers and how they were marked
Full marks2/2

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

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

Some marks1/2

Program instructions are stored in main memory.

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

No marks0/2

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

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

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

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

6Describe2 marksLow and High Level Languages Swap Remove

A programmer has written a program in assembly language.

Describe why it is necessary to translate the program into machine code before it can be run.

[2 marks]
Mark scheme

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

  • The processor/CPU can only execute machine code/binary instructions (1) so the assembly instructions must be converted into machine code before the program can run (1)
  • Each assembly instruction/mnemonic matches/corresponds to one machine code instruction (1) so each line must be replaced with the machine code the processor executes (1)
  • The program is written using mnemonics (1) that must be translated into machine code for the processor to carry out the instructions (1)
  • The hardware/processor does not understand assembly language directly (1) so it must be translated into machine code that the processor can execute (1)

Do not accept 'assembly language is a low-level language'.

Do not accept 'it is hard to understand' or 'it is not English'.

Do not accept benefits, such as 'machine code runs faster' or 'the program will run more quickly'.

Do not accept 'an assembler/a translator converts it' on its own, with no reference to the processor only being able to execute machine code/binary.

Do not accept responses about high-level languages or about compilers/interpreters.

Example answers and how they were marked
Full marks2/2

The processor can only execute machine code, so the assembly instructions must be converted into machine code before the program can run.

Why: States what the processor can execute (1) and links it to converting the program's instructions into machine code (1).

Some marks1/2

Each assembly instruction matches one machine code instruction.

Why: Correct point about the one-to-one match (1) but no development saying that this is because the processor only executes machine code.

No marks0/2

Because an assembler translates assembly language into machine code.

Why: Names the translator but gives no reason tied to the processor only being able to execute machine code, so no mark; this is in the 'Do not accept' guidance.

7Explain2 marksPacket Switching Swap Remove

A file is sent across the internet in packets.

Explain why packets from the same file may take different routes.

[2 marks]
Mark scheme

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

  • Each router chooses the best route at the time (1) so when a route becomes busy/congested or fails, later packets are forwarded along a different path (1)
  • Routers forward each packet separately (1) so the path a packet takes depends on the traffic conditions when that packet arrives (1)
  • A router may send a packet to a different next router (1) if its routing table shows a better/less congested route for that packet (1)
  • Traffic on the internet changes (1) so no single path is kept for the file and each packet can use whichever route is best when it is sent (1)

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

Allow reference to a routing table, or to how a router decides the route, as part of the linked reason.

Do not accept 'the packets have different IP addresses' because all packets from the same file have the same destination IP address, even though their routes can differ.

Do not accept 'the internet is busy' or 'there is a lot of traffic' on its own without linking this to the router choosing a different route.

Do not accept 'different routers send the packets' on its own without a reason why a different router/route is chosen.

Do not accept an answer that only says the packets take different routes without explaining why.

Example answers and how they were marked
Full marks2/2

Each router chooses the best route at the time, so if one route becomes busy or fails, later packets are sent a different way.

Why: Linked point (1) that each router chooses the best route at the time and reason (1) that a busy or failed route means later packets take a different path.

Some marks1/2

Routers send packets along the least congested route.

Why: States that a router chooses the least congested route (1) but gives no linked reason why this makes the packets from the file take different routes.

No marks0/2

Because each packet is given a different IP address so they go to different places.

Why: Misconception named in the mark scheme: all packets from the same file share the same destination IP address, even though their routes can differ.

8Calculate2 marksBinary Shifts Swap Remove

Computers manipulate binary patterns.

Complete the table with the result of applying the shift to the binary pattern.

[2 marks]
Binary patternShift8-bit binary result
1000 0001Logical shift right by 1
Mark scheme

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

  • 0100 (1)
  • 0000 (1)

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

Example answers and how they were marked
Full marks2/2

0100 0000

Why: Every bit moves 1 place right, with 0s in from the left: both nibbles are correct (2).

Some marks1/2

0100 0001

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

No marks0/2

0000 0010

Why: Shifts the bits the wrong way. Neither nibble is correct.

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

10Discuss6 marksTranslators Swap Remove

A student is writing a program in a high-level language. The student runs the program after every small change to check that it works.

Discuss whether the student should use an interpreter or a compiler while writing and testing the program.

Your answer should include:

  • how each translator deals with a syntax error
  • how much of the program is translated at a time
  • how this affects the student's testing.
[6 marks]
Mark scheme

Indicative content

How each translator deals with a syntax error

  • An interpreter stops as soon as it finds a syntax error and displays an error message.
  • With an interpreter, the lines before the error have already been executed, so the student can see how far the program got before it stopped.
  • A compiler reports errors at the end of translation, so the student gets a list of all the syntax errors in the program in one go.

How much of the program is translated at a time

  • An interpreter translates one line at a time and executes each line immediately.
  • A compiler translates the whole program in one go before any of it is run.
  • A compiler produces object code, so after every change the whole program must be compiled again before the student can run it.
  • An interpreter produces no object code, so the student does not have to wait for the whole program to be translated before it runs.

How this affects the student's testing

  • An interpreter suits this student because the program can be run straight away after each small change.
  • The interpreter stops at the first error found, so the student fixes that error and runs the program again, but may only find the next error on the next run.
  • Reporting every error at the end of compilation means the student can fix several errors at once, but cannot run the program until the whole program compiles.
  • The student should use an interpreter while testing, and compile the finished program once it works.

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)

Level 3 responses must relate the way each translator works to the student's testing, not just describe the two translators.

Do not accept answers about run-time or logic errors where no comparison of the translators is made.

Example answers and how they were marked
Full marks6/6

The student should use an interpreter while testing. An interpreter translates one line at a time and executes each line straight away, so as soon as the student has made a small change the program can be run without waiting for the whole program to be translated. If there is a syntax error, the interpreter stops at that line and displays an error message, and the lines before it have already been executed, so the student knows exactly where the problem is. A compiler translates the whole program in one go and only reports the errors at the end, so the student would get a list of all the syntax errors, but could not run any of the program until the whole program compiled successfully.

Why: Explains how each translator deals with a syntax error, how much is translated at a time (one line executed immediately against the whole program at once) and links both to the student's testing, with a conclusion. Level 3.

Some marks4/6

An interpreter translates one line at a time and stops when it finds an error, so the student can see where the error is. A compiler translates the whole program and reports all the errors at the end. The interpreter is better for testing because the student can run the program straight away after a change.

Why: Adequate: correct points about error reporting and one line at a time, with a recommendation, but the effect on testing is only asserted rather than reasoned through, so the linkage is not sustained. Level 2.

Some marks1/6

The student should use a compiler because it translates the program one line at a time and stops at the first error, which makes testing quicker.

Why: The roles of the two translators are reversed, so the answer only makes a basic point about testing more quickly. Level 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.