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

10 questions · 26 marks

Pick again
Print
1Multiple choice1 markFile Management Swap Remove

Identify the task that is part of file management.

[1 mark]
  • AAllocating processor time
  • BCopying a file
  • CManaging user accounts
  • DSending data to a printer
Mark scheme
  • B Copying a file (1)
  • The only correct answer is B. The correct answer is Copying a file.
  • A is not correct because allocating processor time is process management
  • C is not correct because managing user accounts is user management
  • D is not correct because sending data to a printer is peripheral management
Example answers and how they were marked
Full marks1/1

B Copying a file

Why: Correct option (1).

No marks0/1

A Allocating processor time

Why: Allocating processor time is process management, not file management (0).

No marks0/1

C Managing user accounts

Why: Managing user accounts is user management, not file management (0).

2Multiple choice1 markTranslators Swap Remove

A program contains a syntax error. An interpreter reports the error as soon as it finds it.

Identify when a compiler reports the syntax errors it finds in the source code.

[1 mark]
  • AAfter each line is translated
  • BAt the end of translating the program
  • CWhen the first error is found
  • DWhen the object code is run
Mark scheme
  • B At the end of translating the program (1)
  • The only correct answer is B. The correct answer is at the end of translating the program.
  • A is not correct because a compiler translates the whole program and does not report an error after each line; reporting after each line is how an interpreter behaves
  • C is not correct because a compiler does not stop at the first error; it finishes translating and reports the errors it finds at the end
  • D is not correct because syntax errors are found during translation, before the object code is run
Example answers and how they were marked
Full marks1/1

B At the end of translating the program

Why: Chosen option states that errors are reported once the whole program has been translated, as a compiler does (1).

No marks0/1

A After each line is translated

Why: Near miss: reporting an error after each line is the behaviour of an interpreter, not a compiler, so no mark.

No marks0/1

C When the first error is found

Why: Misconception that a compiler stops and reports at the first error it finds; a compiler reports the errors at the end of translation, so no mark.

3Multiple choice1 markWired Connections Swap Remove

A video call is made using a wired Ethernet connection instead of a wireless connection.

Identify the characteristic that is the delay between a signal being sent and received, which is lower on the wired connection.

[1 mark]
  • ABandwidth
  • BLatency
  • CRange
  • DSpeed
Mark scheme
  • B Latency (1)
  • The only correct answer is B. The correct answer is latency.
  • A is not correct because bandwidth is the capacity of a connection, not a measure of time
  • C is not correct because range is the maximum distance a signal can travel, not a measure of time
  • D is not correct because speed is the rate at which data is transferred, not a delay
Example answers and how they were marked
Full marks1/1

B Latency

Why: Selected the correct characteristic, latency, which is the time delay between a signal being sent and received.

No marks0/1

D Speed

Why: Speed is the rate at which data is transferred, not the time delay described in the question.

No marks0/1

A Bandwidth

Why: Bandwidth is the capacity of a connection, not a measure of time, so it does not describe a delay.

4Short recall2 marksPrimary Memory Swap Remove

A computer is designed using the von Neumann stored program concept.

Define the term stored program concept.

[2 marks]
Mark scheme

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

  • The program instructions and data are stored together in main memory/RAM (1)
  • The same memory is used for both instructions and data (1)
  • The instructions are fetched from main memory and executed by the CPU (1)
  • The instructions are fetched and executed one at a time / in sequence (1)
  • The program can be changed/replaced by loading new instructions into memory, without changing the hardware (1)

Do not accept the program is stored in secondary storage / on the hard disk.

Do not accept the program is stored in the CPU / in registers.

Example answers and how they were marked
Full marks2/2

The program instructions and the data are stored together in main memory, and the CPU fetches the instructions one at a time and executes them.

Why: Creditworthy point that instructions and data are stored in the same main memory (1) and the linked point that the CPU fetches and executes them from memory (1).

Some marks1/2

The program is held in the main memory (RAM) so that the computer can run it.

Why: Earns the point that the program instructions are stored in main memory (1), but does not say that the CPU fetches and executes them, so the second mark is not earned.

No marks0/2

The program is stored on the hard disk and loaded into the CPU when it is run.

Why: Both parts are misconceptions named in the Do not accept lines: the stored program concept keeps the instructions in main memory, not on secondary storage or in the CPU.

5Short recall2 marksUnits & Conversion Swap Remove

Data storage is measured in binary multiples.

Define the term bit.

[2 marks]
Mark scheme

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

  • A binary digit (1)
  • Has the value 0 or 1 (1)
  • The smallest unit of data storage (1)
  • A single 0 or 1 (1)

Allow binary digit/binary place value for binary digit

Allow a single binary digit for a single 0 or 1

Do not accept a group of 8 bits/half a nibble of 4 bits, which describe a byte or a nibble

Do not accept a binary number/binary on its own

Example answers and how they were marked
Full marks2/2

A binary digit that can have the value 0 or 1.

Why: A binary digit (1) and has the value 0 or 1 (1).

Some marks1/2

It is the smallest unit of data storage.

Why: Smallest unit of data storage (1), but does not state that it is a binary digit or that it has the value 0 or 1.

No marks0/2

A group of 8 bits.

Why: Describes a byte, not a bit; no creditworthy point and named in the Do not accept line.

6Describe2 marksCharacter Sets Swap Remove

Uppercase letters are represented in a computer using 7-bit ASCII codes.

Describe how the ASCII codes for the uppercase letters A to Z are arranged.

[2 marks]
Mark scheme

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

  • The codes run in alphabetical order/consecutively (1) so each letter has a code one more than the letter before it (1)
  • A has the code 65 and Z has the code 90 (1) so the codes for the letters in between increase by 1 each time (1)
  • The letters are stored in sequence (1) so B is A + 1, C is B + 1 and so on (1)

Accept the codes given in denary (65, 90) or as 7-bit binary (1000001, 1011010).

Do not accept 'the codes go up' or 'the codes are in order' on its own, as neither gives the step of 1 or links one letter to the next.

Do not accept 'each uppercase letter has a different code' on its own, as this does not describe the arrangement.

Example answers and how they were marked
Full marks2/2

The codes are in alphabetical order, so B is one more than A and C is one more than B.

Why: Codes are consecutive/in order (1) with the linked step of one more for each letter (1).

Some marks1/2

A is 65 and Z is 90.

Why: Gives the first half of the linked pair, the start and end codes (1), but does not give the linked development, the increase of 1 between letters (0).

No marks0/2

The ASCII codes for uppercase letters go up.

Why: 'Codes go up' on its own gives no step of 1 and no link to the next letter, so it is not creditworthy (0) under the 'Do not accept' line.

7Convert2 marksHexadecimal to Binary Conversion Swap Remove

Computers manipulate binary patterns.

Convert the hexadecimal number 1F to 8-bit binary.

[2 marks]
Mark scheme

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

  • 0001 (1)
  • 1111 (1)

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

Example answers and how they were marked
Full marks2/2

0001 1111

Why: Each digit is 4 bits: 1 = 0001, F = 1111 (2).

Some marks1/2

0001 0000

Why: Converts F as if it were the next digit up. The first nibble is correct (1); the second is not.

No marks0/2

1111 0001

Why: The nibbles are in the wrong order. Neither nibble is correct.

8Short recall3 marksFetch Decode Execute Cycle Swap Remove

The fetch-decode-execute cycle is used by the CPU.

State three things that happen during the fetch stage.

[3 marks]
Mark scheme

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

  • The address (of the next instruction) is sent from the CPU to main memory / placed on the address bus (1)
  • The (next) instruction is fetched/read from main memory (RAM) (1)
  • The instruction is brought/copied into the CPU / received into the MDR (1)
  • The program counter (PC) is incremented/updated to hold the address of the next instruction (1)

Allow 'the PC/MAR is placed on the address bus' for the address being sent to main memory.

Allow 'the MDR receives the instruction' for the instruction being brought into the CPU.

Do not award a second mark for the instruction being fetched from main memory and the instruction being brought into the CPU; these are the same point.

Do not award 'the instruction is transferred along the data bus' on its own; this is the same point as the instruction being fetched from main memory.

Do not accept answers about decoding the instruction, e.g. 'the instruction is fetched from RAM and decoded', as decoding happens in the decode stage.

Do not accept answers about the execute stage, e.g. 'the ALU carries out the calculation' or 'the result of a calculation is stored in a register', as these happen in the execute stage.

Example answers and how they were marked
Full marks3/3

The address of the next instruction is sent to main memory, the instruction is fetched from RAM, and the program counter is incremented.

Why: Address sent to main memory (1), instruction fetched from RAM (1) and program counter incremented (1).

Some marks1/3

The instruction is fetched from main memory and then decoded.

Why: Fetching the instruction from main memory (1); decoding happens in the decode stage, so it is not creditworthy in the fetch stage.

No marks0/3

The ALU carries out the calculation and the result is stored in a register.

Why: The ALU carrying out a calculation and storing a result happen in the execute stage, not the fetch stage, so no point is creditworthy.

9Discuss6 marksCharacter Sets Swap Remove

A library is digitising its catalogue. The titles of books and the names of authors are stored as text.

Discuss how 7-bit ASCII is used to encode the text in the library catalogue.

Your answer should include:

  • how characters are mapped to codes
  • why 7 bits are used for each character
  • the benefits of using ASCII for the catalogue.
[6 marks]
Mark scheme

Indicative content

How characters are mapped to codes

  • Each character in a book title or author name is given a unique 7-bit binary code from the ASCII character set.
  • The letter A, for example, is stored as the code 1000001 and the letter B as 1000010, so the catalogue can store letters as binary.
  • Uppercase letters, lowercase letters, digits, punctuation and the space character each have their own ASCII code.
  • The same character always uses the same code, so the text can be stored and read back correctly by the library system.

Why 7 bits are used for each character

  • Seven bits give 2 to the power of 7, which is 128 different bit patterns, and this is enough to represent the letters, digits and punctuation needed in the catalogue.
  • A standard keyboard has around 98 characters, so 6 bits would give only 64 codes and would not be enough.
  • Using a fixed 7 bits per character means every character takes the same amount of storage, which makes the catalogue file simple to process.

Benefits of using ASCII for the catalogue

  • ASCII is a standard character set, so the catalogue data can be exchanged between different computers and software.
  • Author names and titles entered on one system will display correctly on another system that uses ASCII.
  • ASCII uses only 7 bits per character, so the catalogue takes less storage than a character set that uses more bits.
  • It is simple to encode and decode because each character has a single fixed code.

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)

Do not accept 8 bits or 256 characters as features of 7-bit ASCII; these are extended ASCII.

Example answers and how they were marked
Full marks6/6

Each character in a catalogue title or author name is given its own 7-bit ASCII code. For example, the letter A is 1000001 and the letter B is 1000010, so the library can store the text as binary. Seven bits give 128 different codes, which is enough for uppercase and lowercase letters, digits, punctuation and spaces. Six bits would give only 64 codes, which would not be enough for all the characters in the catalogue. ASCII is also a standard character set, so the catalogue data can be exchanged between different computers and will display correctly. Because each character uses only 7 bits, the catalogue also takes less storage than it would with a character set that uses more bits per character.

Why: Covers all three bullets with sustained application: mapping and example codes; 7 bits give 128 codes and why 6 bits is insufficient; standardisation and storage benefits. Level 3.

Some marks4/6

ASCII gives each character a unique code. For example, A is stored as 1000001 and B is stored as 1000010. Seven bits are used for each character because seven bits give 128 codes, which is enough for the letters and punctuation in the catalogue. The library can store titles and author names as binary.

Why: Covers mapping and the 7-bit reason with some application, but does not discuss the benefits of ASCII for the catalogue. Level 2.

Some marks1/6

ASCII is a programming language that gives each letter a binary code. It uses 8 bits for each character, so it can store 256 characters. This means it can store every book title in the library.

Why: A basic point that letters are given binary codes is credited, but the answer treats ASCII as a programming language and uses 8 bits/256 characters, which are misconceptions. Level 1.

10Discuss6 marksLow and High Level Languages Swap Remove

A software company is writing a new program that will be sold to users who have different types of computer. The program does not need to control the hardware of the computer directly. The company must decide whether to write the program in a high-level language or a low-level language.

Discuss whether the company should use a high-level language or a low-level language to write this program.

Your answer should consider:

  • machine independence
  • processor specificity
  • how the code is translated for each type of computer.
[6 marks]
Mark scheme

Indicative content

Machine independence

  • A high-level language is machine independent, so the same source code can be run on different types of computer with few or no changes.
  • The company can write the program once and sell it to users with different computers, without rewriting the code for each type of computer.
  • Only one version of the program needs to be written and maintained, so development takes the company less time.

Processor specificity

  • A low-level language is processor-specific, so a program written for one processor will not run on a different processor without being rewritten.
  • Assembly language instructions depend on the instruction set of the particular processor, so the company would need a separate version of the program for each type of computer.
  • Writing a separate low-level version for every type of computer would take the company much longer than writing one high-level program.
  • Low-level code gives direct control of the hardware of one processor, so it is better suited to device drivers than to a program that must run on many different computers.

Translation

  • High-level source code is translated for each type of computer by a compiler or an interpreter, so one version of the source code is enough for all the users.
  • Assembly language is translated into machine code by an assembler, and the assembler produces machine code for one specific processor only.
  • Machine code is already in a form that one particular processor can execute directly, but the same machine code will not run on a different processor.
  • Each high-level statement translates into several machine code instructions, so the programmer does not need to know the instruction set of the 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)

Additional guidance

  • Level 3 responses must cover both high-level machine independence and low-level processor specificity, with the effect on the company's decision.
  • Do not award low-level language, assembly language or machine code as portable, or 'high-level languages are written in English/like English' as a reason for machine independence.
Example answers and how they were marked
Full marks6/6

A high-level language is machine independent, so the company can write the program once and it will run on different types of computer with few or no changes. A different compiler is used for each type of processor to translate that same source code into the machine code for that computer, so the company can sell one program to all of its users. A low-level language is processor-specific, so a program written in assembly for one processor will not run on a different one. The assembler produces machine code for one particular instruction set, so the company would need to write a separate version for each type of computer, which would take much longer. As the program does not need to control the hardware directly, the company should use a high-level language.

Why: Develops high-level machine independence with the compiler translating for each processor, and low-level processor specificity with the assembler producing machine code for one instruction set, both applied to the company's decision, in a coherent and sustained argument: Level 3, 6 marks.

Some marks3/6

A high-level language is machine independent, so the company can write the program once. A different compiler is used for each type of computer to translate the code, so users with different computers can all run the same program. A low-level language is processor-specific, so it would not be as suitable for the company.

Why: Machine independence is linked to the compiler and applied to the users, but processor specificity is only asserted and no translation of low-level code is given, so the reasoning is not sustained: Level 2, 3 marks.

Some marks1/6

High-level languages are machine independent because they are written in English, so the company can sell the program to anyone. Low-level languages are machine code, so they can be translated to run on any type of computer.

Why: One basic point that high-level languages are machine independent, applied by selling to anyone (1). 'Written in English' is not a reason for machine independence and low-level code is not portable, so neither is credited: Level 1, 1 mark.

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.