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

3 questions · 5 marks

Pick again
Print
1Multiple choice1 markLow and High Level Languages Swap Remove

A software company writes its application programs in a high-level language.

Identify the main reason a high-level language is used for most application programs.

[1 mark]
  • AIt gives the programmer direct control of the hardware
  • BIt is easier to learn, write and debug
  • CIt produces smaller executable code
  • DIt runs more quickly than a low-level language
Mark scheme
  • B It is easier to learn, write and debug (1)
  • The only correct answer is B. The correct answer is easier to learn, write and debug.
  • A is not correct because direct control of the hardware is a reason for using a low-level language
  • C is not correct because a low-level language produces smaller executable code
  • D is not correct because low-level programs run more quickly than high-level programs
Example answers and how they were marked
Full marks1/1

B It is easier to learn, write and debug

Why: Correct option: high-level languages look like English, so programs are quicker to write and easier to debug (1).

No marks0/1

C It produces smaller executable code

Why: Near miss: smaller executable code is a feature of low-level languages, so no mark is awarded.

No marks0/1

A It gives the programmer direct control of the hardware

Why: Misconception: direct control of hardware is a purpose of low-level languages, not high-level, so no mark.

2Short recall2 marksLow and High Level Languages Swap Remove

Device drivers allow hardware devices to work with a computer system.

Give two advantages of using a low-level programming language to write device drivers.

[2 marks]
Mark scheme

Award one mark for any of the following up to a maximum of two marks:

  • It can control/manipulate the hardware (components/registers/memory locations) directly (1)
  • Each instruction maps to a single machine-code instruction, so the behaviour/timing can be controlled precisely (1)
  • The code can run very quickly / has a fast execution time (1)
  • The code uses less memory/RAM (1)
  • The code can be optimised for a particular processor/chipset (1)

Only award one mark where both 'controls the hardware' and 'accesses registers/memory locations' are given, as these are the same point.

Do not accept 'it is closer to the hardware' without saying that it controls or accesses the hardware directly.

Do not accept easier/faster to write/program/learn/understand/debug (these are advantages of high-level languages).

Do not accept faster/quicker without qualification.

Do not accept portable/machine independent.

Do not accept does not need to be translated/compiled (assembly language must be assembled).

Do not accept it is a low-level language / a repeat of the question.

Example answers and how they were marked
Full marks2/2

It can control the hardware directly and the code runs very quickly.

Why: Two creditworthy advantages: controls the hardware directly (1); fast execution (1).

Some marks1/2

It uses less memory than a high-level language.

Why: Creditworthy point: uses less memory/RAM (1). Only one advantage given.

No marks0/2

It is easier to understand and debug than a high-level language.

Why: These are advantages of high-level languages, not low-level ones; the mark scheme does not accept easier to understand or debug.

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.

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.