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 · 18 marks

Pick again
Print
1Multiple choice1 markStored Program Computers Swap Remove

Identify the function of the control unit in the fetch-decode-execute cycle.

[1 mark]
  • ADecodes instructions
  • BPerforms arithmetic operations
  • CStores data and instructions
  • DTemporarily stores data being processed
Mark scheme
  • A Decodes instructions (1)
  • The only correct answer is A. The correct answer is Decodes instructions.
  • B is not correct because the arithmetic logic unit performs arithmetic operations
  • C is not correct because main memory stores data and instructions
  • D is not correct because registers temporarily store data being processed
Example answers and how they were marked
Full marks1/1

A Decodes instructions

Why: Correct option: the control unit decodes instructions during the fetch-decode-execute cycle (1).

No marks0/1

C Stores data and instructions

Why: Main memory stores data and instructions, not the control unit; this is a common distractor, so no mark.

No marks0/1

B Performs arithmetic operations

Why: Arithmetic operations are performed by the ALU, not the control unit; a common confusion between CPU components, so no mark.

2Multiple choice1 markCharacter Sets Swap Remove

ASCII is a character set used for representing text.

Identify the number of bits used to encode each character in ASCII.

[1 mark]
  • A6
  • B7
  • C8
  • D16
Mark scheme
  • B 7 (1)
  • The only correct answer is B. The correct answer is 7 bits.
  • A is not correct because 6 bits give only 64 different characters
  • C is not correct because 8 bits are used by extended ASCII to give 256 characters
  • D is not correct because 16 bits give 65 536 different characters, which is far more than the 128 in ASCII
Example answers and how they were marked
Full marks1/1

B 7

Why: B is the only correct answer: each ASCII character is encoded using 7 bits (1).

No marks0/1

C 8

Why: Near miss scoring 0: 8 bits is extended ASCII, and the scheme's C line says extended ASCII, not ASCII, is not the answer.

No marks0/1

A 6

Why: Misconception scoring 0: 6 bits give only 64 different characters, so it cannot be ASCII.

3Describe2 marksUtility Software Swap Remove

A small business stores its customer records on a computer.

Describe the purpose of backup software.

[2 marks]
Mark scheme

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

  • Makes a copy/duplicate of the files/data (1) and stores it on a separate storage device/at a different location (1)
  • Copies the data at regular intervals (1) so a recent version is available if the original is lost (1)
  • Keeps a copy of the files (1) so that the data can be restored after the original is deleted/corrupted (1)
  • Stores the copies on another device (1) so the data is not lost if the original device fails/is damaged by a fire or flood (1)

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

Do not accept responses about repairing corrupted files or removing malware, as these are different utility programs.

Example answers and how they were marked
Full marks2/2

It makes a copy of the data and saves it on a separate storage device (1) so that the records can be restored if the original files are deleted or the computer fails (1).

Why: The point (1) and a linked development giving the purpose of the copy (1).

Some marks1/2

It makes a copy of the files and saves it on another disk.

Why: The point and location are given (1), but there is no development saying what the copy is used for, so no second mark.

No marks0/2

It repairs damaged files so that they can be opened again by the program.

Why: This describes file repair software, which the mark scheme does not accept for this question.

4Describe2 marksLow and High Level Languages Swap Remove

A device driver is software that allows the operating system to control a piece of hardware. Device drivers are often written in a low-level programming language.

Describe one reason why a low-level programming language is suitable for writing a device driver.

[2 marks]
Mark scheme

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

  • Instructions can manipulate/control the hardware/memory/registers directly (1) so the driver can control the specific device it is written for (1)
  • The code is written for one specific processor/architecture (1) so it works with the exact hardware it will control (1)
  • The programmer controls exactly how memory/registers are used (1) so the code is efficient and needs little memory, which suits a device that has limited memory (1)
  • Each instruction maps to one machine code instruction (1) so the driver code is small enough to fit in the memory of the device (1)

Extra detail, such as naming the device the driver controls, is not needed to earn the marks.

Do not accept 'it is closer to machine code' on its own: it must be developed to show how this helps the driver, e.g. it can control the hardware directly.

Do not accept 'it is faster/quicker' with no link to the hardware/device, e.g. the device responds quickly.

Do not accept 'it is easier to learn', 'it is easier to debug' or 'it takes less time to write'.

Example answers and how they were marked
Full marks2/2

Low-level instructions can manipulate the hardware and memory directly (1) so the driver can control the specific device it was written for, such as a sound card (1).

Why: Point about direct control of hardware/memory (1) linked to controlling the specific device (1). The named device is extra detail and is not needed.

Some marks1/2

Low-level instructions can manipulate the hardware directly.

Why: Correct point (1) but no linked development saying how this helps the device driver.

No marks0/2

It is closer to machine code so it runs faster than a high-level language.

Why: 'Closer to machine code' is not developed into how this helps the driver, and 'runs faster' is not linked to the hardware/device, so no mark.

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 marksTranslators Swap Remove

A student is writing a program in a high-level language. The student runs the program after every small change to check that it works.

Discuss whether the student should use an interpreter or a compiler while writing and testing the program.

Your answer should include:

  • how each translator deals with a syntax error
  • how much of the program is translated at a time
  • how this affects the student's testing.
[6 marks]
Mark scheme

Indicative content

How each translator deals with a syntax error

  • An interpreter stops as soon as it finds a syntax error and displays an error message.
  • With an interpreter, the lines before the error have already been executed, so the student can see how far the program got before it stopped.
  • A compiler reports errors at the end of translation, so the student gets a list of all the syntax errors in the program in one go.

How much of the program is translated at a time

  • An interpreter translates one line at a time and executes each line immediately.
  • A compiler translates the whole program in one go before any of it is run.
  • A compiler produces object code, so after every change the whole program must be compiled again before the student can run it.
  • An interpreter produces no object code, so the student does not have to wait for the whole program to be translated before it runs.

How this affects the student's testing

  • An interpreter suits this student because the program can be run straight away after each small change.
  • The interpreter stops at the first error found, so the student fixes that error and runs the program again, but may only find the next error on the next run.
  • Reporting every error at the end of compilation means the student can fix several errors at once, but cannot run the program until the whole program compiles.
  • The student should use an interpreter while testing, and compile the finished program once it works.

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 relate the way each translator works to the student's testing, not just describe the two translators.

Do not accept answers about run-time or logic errors where no comparison of the translators is made.

Example answers and how they were marked
Full marks6/6

The student should use an interpreter while testing. An interpreter translates one line at a time and executes each line straight away, so as soon as the student has made a small change the program can be run without waiting for the whole program to be translated. If there is a syntax error, the interpreter stops at that line and displays an error message, and the lines before it have already been executed, so the student knows exactly where the problem is. A compiler translates the whole program in one go and only reports the errors at the end, so the student would get a list of all the syntax errors, but could not run any of the program until the whole program compiled successfully.

Why: Explains how each translator deals with a syntax error, how much is translated at a time (one line executed immediately against the whole program at once) and links both to the student's testing, with a conclusion. Level 3.

Some marks4/6

An interpreter translates one line at a time and stops when it finds an error, so the student can see where the error is. A compiler translates the whole program and reports all the errors at the end. The interpreter is better for testing because the student can run the program straight away after a change.

Why: Adequate: correct points about error reporting and one line at a time, with a recommendation, but the effect on testing is only asserted rather than reasoned through, so the linkage is not sustained. Level 2.

Some marks1/6

The student should use a compiler because it translates the program one line at a time and stops at the first error, which makes testing quicker.

Why: The roles of the two translators are reversed, so the answer only makes a basic point about testing more quickly. Level 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.