Menu

Edexcel GCSE Computer Science (1CP2) Exam Questions

Build a practice paper from 659 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

4 questions · 7 marks

Pick again
Print
1Short recall1 markTranslators Swap Remove

A compiler translates a whole program in one go before it is run.

Name the type of code that a compiler produces.

[1 mark]
Mark scheme

Award one mark for any of the following:

  • Object code (1)
  • Machine code (1)
  • Executable code / an executable (1)

Allow object file.

Do not accept source code.

Do not accept high-level code.

Example answers and how they were marked
Full marks1/1

Object code.

Why: Object code is named as the code a compiler produces (1).

No marks0/1

High-level code.

Why: Near-miss: this is the input to the compiler, not the code it produces; not accepted.

No marks0/1

Source code.

Why: Names the programmer's input rather than the compiler's output; not accepted.

2Describe2 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 so the driver can control the specific device it was written for, such as a sound card.

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.

3Explain2 marksLow and High Level Languages Swap Remove

High-level languages are designed to be easier to learn than low-level languages.

Explain one reason why a high-level language is easier to learn than a low-level language.

[2 marks]
Mark scheme

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

  • Statements are written in English-like words/use maths symbols (1) so the programmer can understand more easily what each one does (1)
  • The language uses meaningful names for variables/structured constructs such as loops (1) so the code is easier to read/follow (1)
  • One statement translates into several machine code instructions (1) so there are fewer instructions to learn/understand for the same task (1)

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

Do not accept 'it is easier' / 'it is simpler' on its own, without saying what is easier/simpler.

Do not accept 'the computer understands it directly' / 'it does not need translating'.

Do not award answers about the program running faster or using less memory, as these are not about ease of learning.

Example answers and how they were marked
Full marks2/2

Statements are written in English-like words so the programmer can understand more easily what each line does.

Why: Linked point (1) of English-like statements and reason (1) that these are easier to understand.

Some marks1/2

It uses meaningful names for variables so it is easier.

Why: Point (1) that meaningful names for variables are used, but 'so it is easier' is not accepted as the linked reason.

No marks0/2

Because the computer can understand high-level code without translation.

Why: Misconception that high-level code is understood directly by the computer; no creditworthy characteristic of the language is given.

4Explain2 marksLow and High Level Languages Swap Remove

A programmer writes the same program in a low-level language and in a high-level language.

Explain one reason why the program written in the low-level language may run faster.

[2 marks]
Mark scheme

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

  • The programmer can choose the most efficient instructions/registers to use (1) so the program completes its task in fewer steps (1)
  • The programmer can optimise the code for the processor (1) because low-level instructions give direct control of registers/memory (1)
  • Each low-level instruction maps to one machine code instruction (1) so fewer instructions are executed than for the equivalent high-level code (1)
  • The translated code is smaller (1) so fewer instructions are fetched from memory and executed (1)

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

Do not accept 'it is low-level' / 'it is closer to machine code' / 'low-level code is faster' on its own without a reason why it makes the program run faster.

Do not accept 'high-level code has to be translated' / 'high-level code is interpreted' on its own without saying why that makes the program slower.

Do not accept 'the code is smaller' on its own without saying that this means fewer instructions are fetched/executed.

Do not accept 'it is easier to write' or 'quicker to type' as a reason for faster execution.

Example answers and how they were marked
Full marks2/2

The programmer can choose the most efficient instructions and registers to use so the program completes its task in fewer steps.

Why: Linked point (1) of choosing efficient instructions/registers and reason (1) that the task is completed in fewer steps, so it runs faster.

Some marks1/2

Each low-level instruction maps to one machine code instruction so the program is shorter to type.

Why: Point (1) that one low-level instruction maps to one machine code instruction, but being shorter to type does not explain why the program runs faster, so no second mark.

No marks0/2

Because it is closer to machine code.

Why: 'Closer to machine code' alone gives no reason why that makes the program run faster, and the mark scheme does not accept it on its own.

Questions by topic

5.3 Cybersecurity

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.