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 · 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 markTranslators Swap Remove

A compiler translates programs written in a high-level language.

State how much of a program a compiler translates before the program is run.

[1 mark]
Mark scheme

Award one mark for:

  • The whole program (before it is run) (1)

Allow all of the code/the entire program/the whole program in one go

Do not accept one line/statement at a time or each line as it is executed

Do not accept translating only the lines that contain errors

Example answers and how they were marked
Full marks1/1

The whole program, before it is run.

Why: Whole program translated before it is run (1).

No marks0/1

It translates the program one line at a time.

Why: Describes an interpreter; the scheme does not accept line-by-line translation.

No marks0/1

It translates only the lines that contain errors.

Why: Not a compiler behaviour; the scheme does not accept translating only error lines.

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

4Explain2 marksLow and High Level Languages Swap Remove

A program written in a high-level language can be run on computers that have different processors.

Explain one reason why this is possible.

[2 marks]
Mark scheme

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

  • The same source code can be used on different processors (1) because a compiler/interpreter for each processor translates it into that processor's machine code/instructions (1)
  • The program is machine/processor independent (1) because the code is translated into the machine code/instructions of each processor it is run on (1)
  • A different compiler/interpreter is used for each type of processor (1) so the same source code can be translated into each processor's machine code/instructions (1)
  • The program can be moved/copied to a computer with a different processor (1) because a compiler/interpreter that produces code for that processor exists (1)

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

Do not accept 'it is portable' without a linked reason about translation for different processors.

Do not accept 'it is easier to use/read/write' on its own without a linked reason about translation/processors.

Do not accept 'it is not written in binary'/'it is not machine code'/'it is not written in assembly language' as the reason without saying that the code is translated into each processor's machine code/instructions.

Do not accept the misconception that the program runs directly on any processor without being translated.

Example answers and how they were marked
Full marks2/2

The same source code can be used on different processors because a compiler for each type of processor translates it into that processor's machine code.

Why: Linked point (1) that the same source code is used and reason (1) that a compiler translates it into each processor's machine code.

Some marks1/2

It is machine independent because it is not written in binary.

Why: Point (1) that the program is machine independent, but the reason given does not say that the code is translated for each processor's machine code/instructions.

No marks0/2

Because it is easier to use than machine code.

Why: No point about translation or different processors; 'easier to use' is not accepted without a linked reason about translation/processors.

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.