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

5 questions · 16 marks

Pick again
Print
1Multiple choice1 markCharacter Sets Swap Remove

ASCII is a character set used for representing text.

Identify the number of bits used to encode each character in ASCII.

[1 mark]
  • A6
  • B7
  • C8
  • D16
Mark scheme
  • B 7 (1)
  • The only correct answer is B. The correct answer is 7 bits.
  • A is not correct because 6 bits give only 64 different characters
  • C is not correct because 8 bits are used by extended ASCII to give 256 characters
  • D is not correct because 16 bits give 65 536 different characters, which is far more than the 128 in ASCII
Example answers and how they were marked
Full marks1/1

B 7

Why: B is the only correct answer: each ASCII character is encoded using 7 bits (1).

No marks0/1

C 8

Why: Near miss scoring 0: 8 bits is extended ASCII, and the scheme's C line says extended ASCII, not ASCII, is not the answer.

No marks0/1

A 6

Why: Misconception scoring 0: 6 bits give only 64 different characters, so it cannot be ASCII.

2Short recall1 markSecondary Memory Swap Remove

Data is stored on optical discs as pits and lands.

Name the component in an optical disc drive that reads this data.

[1 mark]
Mark scheme

Award one mark for:

  • Laser (1)

Allow laser beam

Do not accept read/write head

Do not accept pits

Do not accept lands

Do not accept reflective surface

Do not accept magnet/magnetic

Example answers and how they were marked
Full marks1/1

Laser

Why: Laser is the creditworthy answer (1).

No marks0/1

A read/write head

Why: Read/write head is not accepted by the mark scheme; it reads magnetic media, not optical discs, so no marks are awarded.

No marks0/1

Pits and lands

Why: Pits and lands are what the laser reads, not the component that reads the data, so the mark scheme does not accept them.

3Describe2 marksTranslators Swap Remove

A compiler and an interpreter both translate source code.

Describe one difference between what a compiler produces and what an interpreter produces.

[2 marks]
Mark scheme

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

  • A compiler produces object code/machine code/an executable (file) (1) whereas an interpreter produces no object code/translated file (1)
  • A compiler produces a machine code file (1) that can be run on its own/without the compiler/translator being present (1)
  • An interpreter produces no object code/file (1) because it translates and executes each line instead of saving translated code (1)
  • The compiler's output can be saved/stored (1) and run again later, while interpreted code has to be translated again each time it is run (1)

Allow binary for machine code.

Allow executable/an executable for object code.

Do not accept responses about translating the whole program, reporting errors or the speed of execution.

Do not accept 'the interpreter translates/executes one line at a time' on its own: this is how it translates, not what it produces. It earns the development only when linked to no object code/translated file being produced.

Do not accept the interpreter producing object code/an executable.

Example answers and how they were marked
Full marks2/2

A compiler produces object code, which is saved as a file, whereas an interpreter does not produce a file because it translates and executes each line.

Why: Compiler produces object code (1) contrasted with the interpreter producing no object code/translated file (1).

Some marks1/2

The compiler produces machine code.

Why: Machine code/object code produced (1); there is no contrast with the interpreter, so the development is not earned.

No marks0/2

The interpreter produces object code for each line it translates.

Why: Reverses the translators' outputs: the interpreter produces no object code, so nothing is creditworthy.

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

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