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

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.

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

An interpreter translates and executes high-level code.

Explain why an interpreted program must be translated again each time it is run.

[2 marks]
Mark scheme

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

  • No object code/machine code file is stored/saved (1) so there is no translated program to run on the next occasion (1)
  • The translation is only temporary/is lost when the program ends (1) because each line is translated as the program runs (1)
  • No executable file is created/saved (1) so the whole program has to be translated again every time it is run (1)
  • The interpreter translates each line while the program is running (1) so nothing is kept that could be run without the interpreter (1)

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

Do not accept 'it is interpreted' or 'it is not compiled' without saying that no object code/executable is stored/saved.

Do not accept 'the source code is high-level so it must be translated' or 'the source code has to be turned into machine code' on its own, as this is true of any translation.

Do not accept answers about the source code being deleted.

Example answers and how they were marked
Full marks2/2

The interpreter does not store an object code file, so there is no machine code file to run on the next occasion.

Why: No object code stored (1) linked to no translated program for the next run (1).

Some marks1/2

No object code is saved.

Why: Point that nothing is stored (1) but no linked reason saying why this means the program must be translated again.

No marks0/2

It has to be translated again because the interpreter deletes the source code after each run.

Why: Incorrect: the interpreter does not delete the source code; no mark scheme point.

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.