Menu

Edexcel GCSE Computer Science (1CP2) Exam Questions

Build a practice paper from 693 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
1Multiple choice1 markTranslators Swap Remove

A compiler translates source code into machine code.

Identify why a compiled program can be run on a computer that does not have the compiler installed.

[1 mark]
  • AThe code is translated again each time it is run
  • BThe code is translated one line at a time
  • CThe object code is saved as a separate file
  • DThe source code is saved with the program
Mark scheme
  • C The object code is saved as a separate file (1)
  • The only correct answer is C. The correct answer is the object code is saved as a separate file.
  • A is not correct because a compiled program is not translated again when it is run
  • B is not correct because translating one line at a time is how an interpreter works
  • D is not correct because the source code is not needed to run a compiled program
Example answers and how they were marked
Full marks1/1

C The object code is saved as a separate file

Why: Selected the saved object code, which can be run without the compiler being present (1).

No marks0/1

D The source code is saved with the program

Why: Near miss: it is the object code, not the source code, that is saved and run on another computer.

No marks0/1

B The code is translated one line at a time

Why: Confuses a compiler with an interpreter: a compiled program is translated as a whole and is not translated again when it is run.

2Describe2 marksLow and High Level Languages Swap Remove

A programmer writes a program in a high-level language.

Describe why the program can be run on computers with different processors.

[2 marks]
Mark scheme

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

  • The same source code can be run on different types/makes of processor (1) with few or no changes being made to the program (1)
  • A compiler/interpreter is available for each type of processor (1) to translate the source code into the machine code for that processor (1)
  • The statements are not tied to one processor's instruction set (1) so the program is portable between different computers (1)

Do not accept 'it is translated by a compiler' on its own.

Do not accept 'the program does not need to be translated' or 'it is easier to use'.

Example answers and how they were marked
Full marks2/2

A compiler exists for each type of processor to translate the source code into the machine code for that processor.

Why: Names the translator for each processor (1) and links it to producing that processor's machine code (1).

Some marks1/2

The same program can be run on different computers.

Why: States that the same code runs on different machines (1) but does not develop it by saying that few or no changes are needed.

No marks0/2

Because it is translated by a compiler.

Why: A compiler on its own does not explain machine independence; the answer does not say that a translator exists for each type of processor.

3Explain2 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.

4Explain2 marksTranslators Swap Remove

A program can be translated by a compiler or by an interpreter.

Explain why a compiled program usually runs faster than an interpreted program.

[2 marks]
Mark scheme

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

  • The compiler translates the whole program into machine code before it is run (1) so no translation is needed while the program is executing (1)
  • The machine code/object code is already produced before execution (1) so the CPU can carry out the instructions directly without translating them (1)
  • The compiled program does not need an interpreter at run time (1) so no time is spent translating each line before it is executed (1)

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

A statement that translation happens before execution, with no linked reason for faster running, earns 1 mark only.

Do not accept 'faster to run' or 'quicker' on its own without a reason linked to translation before/during execution.

Do not accept 'compiled code is optimised' or 'compilation takes less time' without linking this to translation before execution/at run time.

Do not accept answers about the compiler being installed or available.

The question asks why a compiled program usually runs faster, so answers must refer to when translation happens, not just general performance claims.

Example answers and how they were marked
Full marks2/2

The compiler translates the whole program into machine code before it is run, so the CPU does not have to translate each line during execution.

Why: Translation before execution (1) linked to no translation needed during the run, so faster (1).

Some marks1/2

The compiler translates the whole program first.

Why: Pre-translation point (1) but no link to faster running.

No marks0/2

A compiled program runs faster because the compiler is installed on the computer.

Why: Compiler being installed does not make execution faster; no credit.

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.