Menu

Edexcel GCSE Computer Science (1CP2) Exam Questions

Build a practice paper from 514 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

6 questions · 19 marks

Pick again
Print
1Multiple choice1 markSound Swap Remove

A sound wave is sampled and the amplitude of each sample is stored using 2 bits.

Identify the number of different amplitude values that can be stored for each sample.

[1 mark]
  • A2
  • B4
  • C8
  • D16
Mark scheme
  • B 4 (1)
  • The only correct answer is B. The correct answer is 4 (2 bits give 2^2 = 4 values).
  • A is not correct because 2 is the number of bits used to store each sample
  • C is not correct because 8 different amplitude values would need 3 bits
  • D is not correct because 16 different amplitude values would need 4 bits
Example answers and how they were marked
Full marks1/1

B 4

Why: Selects the only correct option (1).

No marks0/1

C 8

Why: Near miss: 8 values would need 3 bits, one more than this recording uses (0).

No marks0/1

A 2

Why: Typical misconception: 2 is the number of bits, not the number of amplitude values those bits can store (0).

2Describe2 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.

3Explain2 marksPacket Switching Swap Remove

A file is sent across the internet in packets.

Explain why packets from the same file may take different routes.

[2 marks]
Mark scheme

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

  • Each router chooses the best route at the time (1) so when a route becomes busy/congested or fails, later packets are forwarded along a different path (1)
  • Routers forward each packet separately (1) so the path a packet takes depends on the traffic conditions when that packet arrives (1)
  • A router may send a packet to a different next router (1) if its routing table shows a better/less congested route for that packet (1)
  • Traffic on the internet changes (1) so no single path is kept for the file and each packet can use whichever route is best when it is sent (1)

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

Allow reference to a routing table, or to how a router decides the route, as part of the linked reason.

Do not accept 'the packets have different IP addresses' because all packets from the same file have the same destination IP address, even though their routes can differ.

Do not accept 'the internet is busy' or 'there is a lot of traffic' on its own without linking this to the router choosing a different route.

Do not accept 'different routers send the packets' on its own without a reason why a different router/route is chosen.

Do not accept an answer that only says the packets take different routes without explaining why.

Example answers and how they were marked
Full marks2/2

Each router chooses the best route at the time, so if one route becomes busy or fails, later packets are sent a different way.

Why: Linked point (1) that each router chooses the best route at the time and reason (1) that a busy or failed route means later packets take a different path.

Some marks1/2

Routers send packets along the least congested route.

Why: States that a router chooses the least congested route (1) but gives no linked reason why this makes the packets from the file take different routes.

No marks0/2

Because each packet is given a different IP address so they go to different places.

Why: Misconception named in the mark scheme: all packets from the same file share the same destination IP address, even though their routes can differ.

4Calculate2 marksAdding Binary Numbers Swap Remove

Computers manipulate binary patterns.

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

[2 marks]
1286432168421
10010101
01001111
Mark scheme

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

  • 1110 (1)
  • 0100 (1)

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

Example answers and how they were marked
Full marks2/2

1110 0100

Why: 149 + 79 = 228, carrying where a column adds to 2: both nibbles are correct (2).

Some marks1/2

1110 0101

Why: A slip in the last bit. The first nibble is correct (1); the second is not.

No marks0/2

1101 1111

Why: Writes 1 in every column with a 1 and never carries. Neither nibble is correct.

5Discuss6 marksUser Management Swap Remove

A school library has 24 computers that are shared by students and teachers throughout the day. Each computer runs an operating system. The school wants users' work to be kept private and the computers to be used only by authorised people.

Discuss how the operating system's user management features can be used to share the computers securely.

Your answer should include:

  • user accounts
  • authentication
  • the benefits for the school.
[6 marks]
Mark scheme

Indicative content

User accounts

  • Each student and teacher should have their own user account, so the operating system can identify the person who is logged on.
  • The operating system keeps a record of all valid users on the computer, so unknown users are not allowed to log in.
  • A separate home area or folder can be created for each account, so a student's saved work is kept apart from other users' work.
  • An account can be disabled when a student leaves the school, so they can no longer access the computers.

Authentication

  • A username and password can be required at login, so only users with the correct details can use the computer.
  • The operating system checks the entered password against the stored password for that account before allowing access.
  • Users should be encouraged to choose a strong password, which makes it harder for someone else to guess and log in.
  • The operating system can lock an account after several failed login attempts, which reduces the chance of someone trying passwords repeatedly.

Benefits for the school

  • Many students can share the same computers because each person's files are kept separate.
  • Work is less likely to be deleted or changed by another student, because users only see their own files.
  • The school can see which account was used on a computer, so misuse can be traced to a user.
  • Teachers can be confident that only authorised people can use the library computers.
  • The school does not need a separate computer for every student, so it saves money.

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 user accounts and authentication, and apply them to the school library.

Do not accept general operating system functions such as file management or process management unless they are explicitly linked to managing users.

Example answers and how they were marked
Full marks6/6

Each student and teacher should have their own user account with a username and password. When someone logs in, the operating system checks the password against the one stored for that account, so only authorised people can use the computer. Each account can have its own home folder, so a student's work is kept private and another student cannot open or delete it. If a student leaves the school, their account can be disabled so they cannot log in again. This lets the school share a smaller number of computers safely, as each user's work stays separate and any misuse can be traced to the logged-in account.

Why: Level 3. It explains user accounts, authentication and benefits, with sustained links to sharing computers in the school library.

Some marks4/6

Every user should have a username and password. The operating system checks the password so that people who are not allowed cannot log in. Each user should also have their own area to save files so they do not delete other people's work.

Why: Level 2. Basic accounts and authentication points are made and linked, but the benefits to the school are only briefly applied and not developed.

No marks0/6

The operating system manages the users by looking after the files in folders and by making sure the printer works for everyone. It also keeps the computer running quickly when lots of students use it.

Why: Level 0. These are general operating system functions such as file management and peripheral management, not user management, so no creditworthy point is made.

6Discuss6 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.