Menu

Edexcel GCSE Computer Science (1CP2) Exam Questions

Build a practice paper from 573 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 · 13 marks

Pick again
Print
1Multiple 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.

2Short recall2 marksEmbedded Systems Swap Remove

A digital camera contains an embedded system.

Give two functions that the embedded system performs in the digital camera.

[2 marks]
Mark scheme

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

  • Focus the lens/autofocus (1)
  • Control the shutter (speed) (1)
  • Control the flash/decide when the flash is needed (1)
  • Measure the light level to set the exposure/the aperture (1)
  • Stabilise the lens/image stabilisation (1)
  • Zoom the lens in and out (1)
  • Detect a face/smile (1)

Do not accept 'take a photograph'/'take a picture'/'capture an image', as taking photographs is the function of the camera, which is given in the question.

Do not accept 'press the button' as this is an action of the user, not a function performed by the embedded system.

Do not accept vague answers such as 'use the camera', 'turn the camera on and off' or 'make the camera work', which do not name a function that the embedded system performs.

Example answers and how they were marked
Full marks2/2

It focuses the lens and decides when the flash should fire.

Why: Focus the lens (1) and control the flash (1).

Some marks1/2

It controls the zoom and takes a picture when the button is pressed.

Why: Zoom the lens credited (1); 'takes a picture' is not accepted because taking photographs is the function of the camera, which is given in the question, and 'press the button' is the user's action, not a function of the embedded system.

No marks0/2

It takes a picture when the button is pressed and it makes the camera work.

Why: No mark: 'takes a picture' repeats the camera's function given in the question, 'press the button' is an action of the user, and 'makes the camera work' is too vague to name a function.

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.

4Explain2 marksProtocols & Layers Swap Remove

Two computers exchange data over a network.

Explain why network protocols are needed for the two computers to communicate.

[2 marks]
Mark scheme

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

  • Devices (can) understand/interpret the data they receive (1) because they follow the same set of rules for communication (1)
  • Data is sent in an agreed format/structure (1) so the receiving device can interpret/understand it correctly (1)
  • Devices (can) connect/communicate successfully (1) because they agree how the data is transmitted, such as the type of signal used (1)
  • Errors (can) be detected/handled (1) because both devices follow the same rules for checking the data (1)

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

Do not accept 'so devices can talk/communicate with each other' or 'so they can understand each other' without saying they follow the same rules/agreed format.

Do not accept an answer that only states protocols are a set of rules, without saying what this allows (e.g. the data can be understood/interpreted).

Do not accept a faster connection/speed as a reason why protocols are needed.

Do not accept naming a protocol (e.g. TCP/IP, HTTP, Wi-Fi) without an explanation of why it is needed.

Do not accept a description of what a protocol does (e.g. 'TCP splits data into packets') without saying why this is needed.

Example answers and how they were marked
Full marks2/2

Devices can understand the data they receive (1) because they follow the same set of rules for communication (1).

Why: Linked point (1) and reason (1): following the same rules is what lets the devices understand the data.

Some marks1/2

Data is sent in an agreed format (1).

Why: Point (1) identified, but no linked reason saying what the agreed format achieves.

No marks0/2

Protocols are needed so the connection is faster (0) because more data can be sent at once.

Why: Speed is not a reason protocols are needed, so there is no creditworthy point or linked reason.

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