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

4 questions · 15 marks

Pick again
Print
1Short recall1 markUnits & Conversion Swap Remove

A file has a size of 2 kibibytes.

State the number of bytes in the file.

[1 mark]
Mark scheme

Award one mark for:

  • 2048 (1)
  • 2 × 1024 (1)
  • 2^11 (1)

Allow 2048 bytes.

Do not accept 2000, which is the number of bytes in two decimal kilobytes.

Do not accept 1024, which is the number of bytes in one kibibyte.

Do not accept 16, which is the number of bits in two bytes.

Example answers and how they were marked
Full marks1/1

2048

Why: 2048 is 2 × 1024, the number of bytes in 2 kibibytes (1).

No marks0/1

2000

Why: 2000 uses the decimal kilobyte, not the binary kibibyte; the mark scheme does not accept it.

No marks0/1

16

Why: 16 is the number of bits in two bytes, confusing bits with bytes; the mark scheme does not accept it.

2Describe2 marksTranslators Swap Remove

High-level code can be translated by a compiler or by an interpreter.

Describe how a compiler translates high-level code differently from an interpreter.

[2 marks]
Mark scheme

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

  • The compiler translates the whole program/complete source code in one go (1) whereas the interpreter translates one line/statement at a time (1)
  • The compiler translates all of the source code before any of it is run/executed (1) but the interpreter translates each line/statement as it reads it (1)
  • The interpreter translates one line/statement at a time (1) and the compiler translates the whole program/source code together (1)

Accept the compiler point and the interpreter point in either order.

Do not accept responses about object code/executable files, when the translated code is executed, how errors are reported, or speed/memory use.

Do not accept 'the interpreter executes/runs each line' on its own, without saying that it translates one line/statement at a time.

Example answers and how they were marked
Full marks2/2

A compiler translates the whole program in one go, while an interpreter translates one line at a time.

Why: Whole program translated in one go (1) and interpreter translates one line at a time (1).

Some marks1/2

A compiler translates the whole program in one go.

Why: Whole program translated in one go (1); no linked point about the interpreter translating a line at a time.

No marks0/2

A compiler produces an executable file, but an interpreter does not.

Why: Describes the output, not the amount translated at a time; object code/executable files are not accepted.

3Discuss6 marksUtility Software Swap Remove

A college has a room of older desktop computers. Each computer has a magnetic hard disk that is almost full. Staff have noticed that files on these computers take a long time to open because the disks have become fragmented.

Discuss the use of disk defragmentation software on these computers.

Your answer should include:

  • how files become fragmented
  • what defragmentation software does
  • the benefits and drawbacks of running it.
[6 marks]
Mark scheme

Indicative content

How files become fragmented

  • A file is saved into free blocks on the disk, so as files are deleted and new ones saved, one file can end up split across blocks in different places.
  • Large files are more likely to become fragmented because they may not fit into one free space.
  • The more the disks are used, the more fragmented they become, so the read/write head has to move to more locations to read all the parts of a file.
  • Fragmentation is the reason that files on the college's computers take a long time to open.

What defragmentation software does

  • It reorganises the blocks of each file so that they are stored together (contiguously) on the disk.
  • It collects the free space into one block so that new files are written in one piece and are less likely to be fragmented.
  • It is a housekeeping utility that is often supplied with the operating system, and it reorganises data that is already on the disk.
  • It does not change the contents of any file, it only changes where the blocks of the file are stored.

Benefits of running it

  • Files and programs open faster because the read/write head makes fewer movements, so the older computers feel quicker without the college buying new hardware.
  • Free space in one block means new files are written in one piece, so the improvement lasts for a while.
  • Running it may mean the college can keep using the older computers for longer instead of replacing them.

Drawbacks of running it

  • It can take a long time to run, so it should be scheduled for when the room is not in use, such as overnight or at weekends.
  • It causes a lot of disk activity, so running it too often puts unnecessary strain on the disks.
  • It does not free up any space, as no files are deleted, so the disks will still be almost full.
  • It only reorganises files that are intact, so it cannot recover a corrupted file, and a backup is still needed.

Levels

  • Level 0 (0 marks): No rewardable content.
  • Level 1 (1–2 marks): Basic, independent points are made, showing elements of understanding of key concepts/principles of computer science. (AO1) The discussion will contain basic information with little linkage between points made or application to the context. (AO2)
  • Level 2 (3–4 marks): Demonstrates adequate understanding of key concepts/principles of computer science. (AO1) The discussion shows some linkages and lines of reasoning with some structure and application to the context. (AO2)
  • Level 3 (5–6 marks): Demonstrates comprehensive understanding of key concepts/principles of computer science to support the discussion being presented. (AO1) The discussion is well developed, with sustained lines of reasoning that are coherent and logically structured, and which clearly apply to the context. (AO2)

Level 3 responses must cover both how files become fragmented and what defragmentation software does, with at least one benefit or drawback applied to the college's computers. An answer that only states what the software does and one benefit, with no explanation of how files became fragmented and no drawback, is Level 1 (2 marks).

Do not accept: defragmentation software compresses files, frees up storage space, deletes unused files, repairs corrupted files, or speeds up the processor or internet connection.

Example answers and how they were marked
Full marks6/6

As files are deleted and new ones saved, a file can be split into blocks in different places on the disk, especially a large file that will not fit into one free space. This means the read/write head has to move to more locations to read the file, which is why the files on these computers are slow to open. Defragmentation software reorganises the blocks so that each file is stored together, and it moves the free space into one block, so new files are written in one piece. Staff would find that files and programs open faster because the head makes fewer movements, so the older computers feel quicker without the college buying new ones. It can take a long time, so the college should schedule it overnight or at the weekend when the room is empty, and it should not be run too often because of the strain on the disks. It will not free up space, as nothing is deleted, so the disks will still be almost full and a backup is still needed.

Why: Level 3: fragmentation, the extra head movements and what the software does are explained accurately (AO1) and applied to the college's own computers, with a benefit and drawbacks including a sensible schedule (AO2).

Some marks2/6

Defragmentation software rearranges the files so that the parts of each file are stored together. This means files open faster, which will help on these computers. It should be run regularly.

Why: Level 1: two basic, independent points, namely that the software stores the parts of a file together and that files then open faster, with little linkage and no explanation of how the files became fragmented and no drawback, so Level 2 is not reached.

Some marks1/6

Defragmentation software compresses the files so they take up less space on the nearly full disks. If the parts of a file are stored together it opens faster.

Why: Level 1: only the basic point that storing the parts of a file together makes it open faster is creditworthy; the claim that defragmentation compresses files is a misconception on the do-not-accept line and is not credited.

4Discuss6 marksLow and High Level Languages Swap Remove

A company is developing the firmware for a robotic vacuum cleaner. The firmware must read the distance sensors and control the motors. The vacuum cleaner has a small amount of memory.

Discuss the characteristics of a low-level programming language that make it suitable for writing the firmware.

Your answer should include:

  • control of the hardware
  • the efficiency of the code
  • the link between the language and the processor.
[6 marks]
Mark scheme

Indicative content

Control of the hardware

  • Low-level languages can read and write the contents of registers and memory addresses directly, so the firmware can take the values from the distance sensors without calling a library routine.
  • Assembly language instructions can read from and write to specific input/output ports on the vacuum cleaner's processor, so the motors can be switched on and off directly.
  • The programmer decides exactly which processor operations are carried out and in which order, which matters when the vacuum must reverse away from a step or an obstacle.
  • A low-level language puts nothing between the program and the hardware, so the programmer can control the hardware of the vacuum cleaner precisely.

Efficiency of the code

  • Assembly language code can be hand-optimised instruction by instruction, so the code that checks a sensor is as short as possible.
  • The programmer can choose which registers hold values that are used again and again, which cuts down the number of memory accesses the firmware needs.
  • A hand-written low-level program can be made compact, so it is more likely to fit in the small amount of memory the vacuum cleaner has.
  • Because each instruction does one defined job, the time taken to react to a sensor reading is predictable, which suits firmware that must not overrun.

Link between the language and the processor

  • Low-level languages are processor-specific, so the instructions used are those of the exact processor in the vacuum cleaner rather than general statements that need translating.
  • Each assembly language instruction maps to one machine code instruction, so the programmer knows precisely which processor operation will be carried out by each line of code.
  • An assembler turns each mnemonic into its machine code equivalent, so the machine code running on the vacuum cleaner's processor is exactly what the programmer wrote.
  • Code written for a different processor would have to be rewritten, which is acceptable here because the vacuum cleaner always uses the same processor.

Levels

  • Level 0 (0 marks): No rewardable content.
  • Level 1 (1–2 marks): Basic, independent points are made, showing elements of understanding of key concepts/principles of computer science. (AO1) The discussion will contain basic information with little linkage between points made or application to the context. (AO2)
  • Level 2 (3–4 marks): Demonstrates adequate understanding of key concepts/principles of computer science. (AO1) The discussion shows some linkages and lines of reasoning with some structure and application to the context. (AO2)
  • Level 3 (5–6 marks): Demonstrates comprehensive understanding of key concepts/principles of computer science to support the discussion being presented. (AO1) The discussion is well developed, with sustained lines of reasoning that are coherent and logically structured, and which clearly apply to the context. (AO2)

Within Level 1, award 1 mark for a single basic point and 2 marks for two or more independent basic points; Level 2 requires the points to be linked to the vacuum cleaner; Level 3 requires both control of the hardware and efficiency of the code, and a few concise, linked sentences can reach Level 3, so extra length is not required.

Accept registers, memory addresses, input/output ports, machine code and mnemonics as ways of describing access to the hardware, and accept 'a low-level language is faster' as a basic point on its own. Do not award 'binary is a low-level language' (machine code is written in binary, but binary is not a language), or characteristics of high-level languages such as being easy to read or portable, as characteristics of a low-level language.

Example answers and how they were marked
Full marks6/6

A low-level language can read and write to registers and to input/output ports directly, so the firmware can take the distance sensor readings and switch the motors without needing library routines. It can be hand-optimised instruction by instruction, so the code that checks a sensor is short and the time it takes is predictable, and a compact program is more likely to fit in the vacuum cleaner's small memory. The language is processor-specific and each assembly instruction maps to one machine code instruction, so the programmer knows exactly which operation the vacuum's processor will carry out, and the assembled machine code is exactly what they wrote.

Why: Covers all three bullets: direct control of registers and ports applied to the sensors and motors, hand-optimised compact code with predictable timing applied to the small memory, and the one-to-one link to the processor's own instruction set. Linked and applied throughout, so Level 3.

Some marks2/6

A low-level language can control the hardware directly. It can read the sensors and control the motors. It is also faster than a high-level language, so the vacuum responds quickly. This is useful because it has little memory.

Why: Three basic, independent points: direct control of the hardware applied to the sensors and motors, faster execution, and suitability for limited memory. They are asserted without development (no registers, ports or predictable timing) and the link between the language and the processor is missing, so Level 1, two or more basic points (2).

Some marks1/6

A low-level language is written in binary, so the computer can understand it directly. It is faster than a high-level language.

Why: 'Faster than a high-level language' is a creditworthy basic point (1). 'Written in binary' is not awarded, as binary itself is not a language and the do-not-award rule applies. Only one undeveloped point with no application to the vacuum cleaner, so Level 1, single basic point (1).

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.