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

5 questions · 14 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 marksUtility Software Swap Remove

A student has a large number of photographs stored on a computer.

Describe the purpose of data compression software.

[2 marks]
Mark scheme

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

  • Makes a file/files smaller (1) so less storage space is needed on the disk (1)
  • Reduces the size of the data (1) so it takes less time to upload/download/transfer the file (1)
  • Compresses files/folders into a single file (1) so an attachment is under the size limit for email (1)
  • Reduces the size of the files (1) so more of them fit onto a storage device/backup media (1)

Do not accept 'it compresses the files' on its own, as this repeats the question.

Do not accept responses about protecting files from malware/viruses or about deleting files.

Example answers and how they were marked
Full marks2/2

It makes the files smaller (1) so that they use less storage space on the computer and more of them fit on the disk (1).

Why: The point (1) and a linked development giving the benefit (1).

Some marks1/2

It makes files smaller.

Why: This is the point (1) but there is no development of what the smaller size leads to, so only one mark.

No marks0/2

It protects the files from viruses so that they cannot be damaged.

Why: This describes anti-malware software, which the mark scheme does not accept; no creditworthy point is made.

3Describe2 marksLow and High Level Languages Swap Remove

A programmer has written a program in assembly language.

Describe why it is necessary to translate the program into machine code before it can be run.

[2 marks]
Mark scheme

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

  • The processor/CPU can only execute machine code/binary instructions (1) so the assembly instructions must be converted into machine code before the program can run (1)
  • Each assembly instruction/mnemonic matches/corresponds to one machine code instruction (1) so each line must be replaced with the machine code the processor executes (1)
  • The program is written using mnemonics (1) that must be translated into machine code for the processor to carry out the instructions (1)
  • The hardware/processor does not understand assembly language directly (1) so it must be translated into machine code that the processor can execute (1)

Do not accept 'assembly language is a low-level language'.

Do not accept 'it is hard to understand' or 'it is not English'.

Do not accept benefits, such as 'machine code runs faster' or 'the program will run more quickly'.

Do not accept 'an assembler/a translator converts it' on its own, with no reference to the processor only being able to execute machine code/binary.

Do not accept responses about high-level languages or about compilers/interpreters.

Example answers and how they were marked
Full marks2/2

The processor can only execute machine code, so the assembly instructions must be converted into machine code before the program can run.

Why: States what the processor can execute (1) and links it to converting the program's instructions into machine code (1).

Some marks1/2

Each assembly instruction matches one machine code instruction.

Why: Correct point about the one-to-one match (1) but no development saying that this is because the processor only executes machine code.

No marks0/2

Because an assembler translates assembly language into machine code.

Why: Names the translator but gives no reason tied to the processor only being able to execute machine code, so no mark; this is in the 'Do not accept' guidance.

4Calculate3 marksAdding Binary Numbers Swap Remove

Binary patterns can represent numbers.

(a)

Complete the table to show the 8-bit result of the binary addition.

[2 marks]
1286432168421
11011011
11011100
Mark scheme

Award one mark for each correct nibble in the correct order:

  • 1011 (1)
  • 0111 (1)

0 marks if the response is not 8-bit binary.

Ignore a carry shown beyond the eighth bit.

Example answers and how they were marked
Full marks2/2

1011 0111

Why: 219 + 220 = 439, which needs 9 bits; the 8 bits that are kept are both correct (2).

Some marks1/2

0000 0111

Why: Forgets to carry the 1s. The second nibble is correct (1); the first is not.

No marks0/2

1101 1111

Why: Never carries. Neither nibble is correct.

(b)

State the name of the error that occurs when this addition is carried out.

[1 mark]
Mark scheme

Award one mark for:

  • overflow (error) (1)
Example answers and how they were marked
Full marks1/1

Overflow

Why: The result needs more bits than are available (1).

No marks0/1

Underflow

Why: A near miss: the result is too big for 8 bits, not too small.

No marks0/1

A syntax error

Why: A syntax error is a mistake in a program's code, not in arithmetic.

5Discuss6 marksLow and High Level Languages Swap Remove

A school computing club is creating a quiz game. The game will be written by students who are new to programming. It will store the names and scores of players in a list. The club wants to choose a language that helps the students finish the game quickly and with few errors.

Discuss the characteristics of a high-level programming language that make it suitable for writing the quiz game.

Your answer should include:

  • how easy the language is to learn, use and debug
  • the data structures it provides for storing the players' names and scores
  • the built-in functions and library routines it provides.
[6 marks]
Mark scheme

Indicative content

Ease of learning, use and debug

  • High-level language statements are written in English-like words and mathematical symbols, so the students can read the quiz game code and understand what each line does.
  • The language is easier to learn than a low-level language, so students who are new to programming can start writing the quiz game quickly.
  • Errors are easier to find and fix because the code is readable; for example, the students can check a line that updates a score against the rule they intended.
  • The students do not need to know how the processor carries out each statement, so they can concentrate on the quiz questions and rules.

Data structures

  • High-level languages provide lists or arrays, so the names and scores of all the players can be stored under one name and processed with a loop.
  • A record can store a player's name and score as one item; in some languages a dictionary or class can be used instead, which keeps related data together.
  • Using a data structure makes the code shorter and easier to understand than separate variables for every player's name and score.

Built-in functions and library routines

  • High-level languages provide built-in functions such as print and input, so the students can display a question and read a player's answer without writing the underlying code.
  • Library routines such as a random number generator can be used to choose quiz questions, saving the students time.
  • String-handling routines can check or compare a player's answer, so the students do not have to write these routines themselves.
  • Reusing tested routines reduces the amount of code the students write and can reduce errors in the quiz game.

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)

Additional guidance: Credit only points applied to the quiz game and the students; comparison with low-level languages is not required, but a correct contrast may support a point if it is applied. Do not award generic claims such as 'high-level programs run faster', 'work on any computer' or 'students do not need to learn syntax' unless they are justified for the quiz game.

Level 3 responses must cover all three bullet areas with linked reasoning that explains why the characteristic helps the students finish the game quickly with few errors; an answer covering only two bullet areas is limited to Level 2. Do not award the idea that high-level code is already machine code or is understood directly by the processor. Accept dictionaries or classes as equivalents of records.

Example answers and how they were marked
Full marks6/6

A high-level language is suitable for the quiz game because its statements use English-like words and mathematical symbols, so students who are new to programming can read the code and see what each part of the quiz does. This also makes the game easier to debug, because the students can compare a line that updates a player's score with the rule they intended. The language gives the students lists or arrays, so all the players' names and scores can be stored under one name, and a loop can then go through the list to display the results. A record, or a dictionary in Python, can keep one player's name and score together, which is clearer than using separate variables. The language also provides built-in functions and library routines such as input, print and a random number generator, so the students do not have to write these from scratch. They can use input to ask for a player's name and print to show the score, and a random number routine to choose a question. This lets the club spend its time on the quiz questions and rules, so the students can finish the game quickly with fewer errors.

Why: Covers all three bullet areas with linked reasoning: readable English-like statements and debugging, lists/records for names and scores, and built-in input/print/random routines, all applied to helping new students finish quickly with fewer errors. This meets Level 3.

Some marks3/6

High-level languages use English words, so the students can understand the code for the quiz game and find mistakes more easily. They provide lists or arrays, so the players' names and scores can be stored together, and a loop can be used to display the scores. This makes the game easier to write for students who are new to programming.

Why: Level 2, 3 marks: covers ease of learning/use and data structures with some application to the quiz game, but gives no built-in facilities and limited development of why this helps the club finish quickly, so it is not Level 3.

No marks0/6

High-level code is already machine code, so the computer can run the quiz game without a translator. The students do not need to learn any syntax.

Why: Contains the machine-code misconception and a generic claim that the scheme does not credit; no creditworthy point is made, so Level 0.

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.