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 · 6 marks

Pick again
Print
1Multiple choice1 markTranslators Swap Remove

Identify the type of translator that translates the whole program into machine code before it is run.

[1 mark]
  • AAssembler
  • BCompiler
  • CInterpreter
  • DLinker
Mark scheme
  • B Compiler (1)
  • The only correct answer is B. The correct answer is compiler.
  • A is not correct because an assembler translates assembly language code into machine code, not a high-level program
  • C is not correct because an interpreter translates and executes the code line by line, without producing a complete machine code program first
  • D is not correct because a linker combines object code files into a single executable, it does not translate source code
Example answers and how they were marked
Full marks1/1

B Compiler

Why: Selected the compiler, the translator that translates the whole program into machine code before it is run (1).

No marks0/1

C Interpreter

Why: Near miss: an interpreter translates and executes the code line by line, so it does not translate the whole program into machine code before it is run.

No marks0/1

A Assembler

Why: Confuses the translators: an assembler translates assembly language code into machine code, it does not translate a high-level program as a whole.

2Short recall1 markLow and High Level Languages Swap Remove

A high-level language uses statements that look like English or maths.

State what a single statement in a high-level language is usually translated into.

[1 mark]
Mark scheme

Award one mark for:

  • Several/multiple machine code instructions (1)

The answer must refer to instructions.

Do not accept machine code on its own.

Do not accept binary on its own.

Do not accept 'one or more machine code instructions' as it does not show that one statement becomes several instructions.

Do not accept assembly code/compiled code/low-level code on their own.

Do not accept 'a line of code'/'a statement' as this repeats the question.

Example answers and how they were marked
Full marks1/1

Several machine code instructions

Why: Matches the creditworthy point that one high-level statement translates into several machine code instructions (1).

No marks0/1

Machine code

Why: Near-miss: gives the type of code but not that one statement becomes several instructions; mark scheme does not accept machine code on its own.

No marks0/1

Binary

Why: Misconception: high-level statements are translated into machine code instructions, not just binary; not accepted.

3Describe2 marksTranslators Swap Remove

Source code can contain syntax errors.

Describe how a compiler and an interpreter differ in the way they deal with syntax errors.

[2 marks]
Mark scheme

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

  • The compiler reports all syntax errors after translation has finished (1) whereas the interpreter stops at the first error it finds (1)
  • The interpreter reports a syntax error as soon as it finds one (1) and does not translate/execute any more of the program (1)
  • The compiler continues translating after an error (1) and reports the errors at the end (1)
  • The interpreter stops translating when it reaches an error (1) but the compiler finishes translating before reporting errors (1)

Do not accept answers about fixing/correcting errors or about object code.

Do not award 'the compiler finds more errors' without saying errors are reported at the end.

Example answers and how they were marked
Full marks2/2

A compiler reports all the syntax errors at the end of translation, whereas an interpreter stops and reports the error as soon as it finds one.

Why: Compiler reports errors at the end (1) and interpreter stops/reports at the first error (1).

Some marks1/2

An interpreter stops translating when it finds a syntax error.

Why: Interpreter stops at the first error (1); no comparison with when the compiler reports errors.

No marks0/2

A compiler reports a syntax error immediately, before translating the rest of the program.

Why: Reverses the compiler's behaviour; it finishes translating before reporting errors.

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.