Menu

Edexcel GCSE Computer Science (1CP2) Exam Questions

Build a practice paper from 604 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 · 6 marks

Pick again
Print
1Short recall2 marksStored Program Computers Swap Remove

The central processing unit (CPU) contains an arithmetic logic unit (ALU).

State two types of operation carried out by the ALU.

[2 marks]
Mark scheme

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

  • An arithmetic operation, e.g. addition/subtraction/multiplication/division (1)
  • A logical operation, e.g. comparing two values (is A > B?) / using AND, OR, NOT (1)

Do not accept decoding instructions, fetching instructions or controlling the timing of the CPU, as these are carried out by the control unit.

Example answers and how they were marked
Full marks2/2

It carries out arithmetic operations such as addition and subtraction, and logical operations such as comparing two values to see if one is greater than the other.

Why: Arithmetic operation (1) and logical operation (1).

Some marks1/2

It adds numbers together and works out the result.

Why: Arithmetic operation, addition (1). No logical operation.

No marks0/2

It decodes the instructions that have been fetched from main memory.

Why: Decoding and fetching are the control unit's role; the mark scheme's do-not-accept line covers this.

2Describe2 marksMemory Management Swap Remove

A user closes a program that is running on a computer.

Describe how the operating system manages the main memory that the program was using.

[2 marks]
Mark scheme

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

  • The memory (that was) used by the program is freed/released/marked as free (1) so it can be allocated/reused by another program/process (1)
  • The operating system's memory allocation table/record (of memory in use) is updated (1) to show that the program's memory locations/blocks are now free/available (1)
  • The program's instructions/data are removed/overwritten in main memory (1) so the space they used is no longer reserved for that program (1)
  • The memory pages/blocks allocated to the program are returned to the list of free pages/blocks (1) that can be used when the next program is loaded (1)

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

Do not award two marks for the same idea described twice (e.g. the memory is freed and added to a list of free blocks); the two marks must come from two different linked descriptions.

Do not accept responses about closing the program window, stopping/terminating the program/process, saving the file or deleting the program from secondary storage/the hard disk.

Ignore statements that main memory is 'managed'/'cleaned up' with no development.

Example answers and how they were marked
Full marks2/2

The operating system updates its memory allocation table to show that the memory locations the program was using are now free, so another program can be loaded into them.

Why: The memory allocation table/record is updated (1) linked to showing the program's memory locations are now free/available (1).

Some marks1/2

The operating system frees up the memory the program was using.

Why: The memory used by the program is freed/released (1), but there is no linked development of what this allows.

No marks0/2

The operating system deletes the program from the hard disk to free up memory.

Why: This confuses main memory with secondary storage; deleting the program from secondary storage is named in the 'Do not accept' line, so no creditworthy point is made.

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.