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

4 questions · 16 marks

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

2Explain2 marksThe Internet Swap Remove

Every device that connects to the internet is given an IP address.

Explain one reason why every device on the internet needs a unique IP address.

[2 marks]
Mark scheme

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

  • Data/packets are delivered to the correct device (1) because the IP address identifies that device on the internet (1)
  • A reply is sent back to the device that made a request (1) because the sender's IP address is used as the destination address for the reply (1)
  • Routers can forward packets to the right device (1) because each packet's destination IP address matches only one device (1)
  • A device can be contacted by other devices (1) because other devices use its IP address to send data to it (1)

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

Allow 'so the router knows where to send data' only when expanded to say the IP address identifies the destination device / is used by routers to forward the packet to that device.

Do not accept 'so it can connect to the internet' / 'so it can access the internet' without saying how the address is used to identify the device or deliver data to it.

Do not accept 'so the device can be identified' on its own without saying what the identification is used for, e.g. delivering data or returning a reply.

Do not award a mark for restating that an IP address is unique / every device has a different address.

Example answers and how they were marked
Full marks2/2

So that data reaches the correct device. The IP address is how the internet tells one device apart from another, so packets are sent to that device and not to a different one.

Why: Point (1): data reaches the correct device. Reason (1): the IP address identifies/tells devices apart, so packets are sent to that device.

Some marks1/2

So that packets go to the right device, because every device has a different address.

Why: Point (1): packets go to the right device. The reason only restates that every device has a different address, which the mark scheme says does not earn the second mark.

No marks0/2

So it can connect to the internet.

Why: No linked explanation of how the address is used; 'so it can connect to the internet' is not accepted without expansion.

3Discuss6 marksPurpose & Function of Operating Systems Swap Remove

A home computer is used to stream music, edit a video and download files at the same time.

Discuss how the operating system manages the processes running on the computer.

Your answer should include:

  • how the CPU is shared between processes
  • the states a process can be in
  • how the operating system responds when a process needs attention
[6 marks]
Mark scheme

Indicative content

How the CPU is shared between processes

  • The operating system uses multitasking to give each process a short time slice on the CPU, so the music, video editor and download appear to run at the same time.
  • The operating system decides which ready process will run next, so one program cannot keep the CPU to itself.
  • The operating system can stop a running process and move it back to ready when its time slice ends, so all processes make progress.

The states a process can be in

  • When a program is opened, the operating system creates a process and moves its instructions into RAM so it is ready.
  • The operating system moves a ready process to running when the CPU is free.
  • A running process becomes blocked when it is waiting for input or data, such as the download waiting for data to arrive.
  • When the process finishes, the operating system terminates it and releases the resources it was using.

How the operating system responds when a process needs attention

  • An interrupt is a signal to the CPU that needs immediate attention, so the operating system suspends the current process and runs the interrupt handler.
  • A hardware interrupt could be a printer out of paper, and a software interrupt could be an error in a program.
  • After the interrupt has been handled, the operating system can return the interrupted process to the CPU.

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 at least two of scheduling, process states and interrupts.
  • A response that only states that the OS 'manages processes' or gives a program a turn, without expansion, is limited to Level 1.
Example answers and how they were marked
Full marks6/6

The OS uses multitasking to share the CPU. It gives each process, such as the music player and the video editor, a small time slice so they appear to run at the same time. It decides which ready process is next and how long it runs. When the video editor is opened, the OS creates a process and moves its instructions into RAM so it is ready; when the CPU is free it moves it to running. If the download is waiting for data, the OS marks it blocked so the CPU is not wasted. If the printer runs out of paper, a hardware interrupt tells the CPU to stop and run the interrupt handler; afterwards the OS returns to the process.

Why: Covers scheduling with time slices, process states (ready, running, blocked) and interrupts, with sustained application to the music, video editor and download. Level 3.

Some marks4/6

The operating system uses multitasking so the music and video editor can run at the same time. It gives each program a small amount of time on the CPU. When a program is opened it creates a process and puts it in RAM. If a process is waiting for input it is blocked.

Why: Covers CPU sharing and process states, with some application, but says nothing about interrupts. Level 2.

Some marks1/6

The operating system manages processes by giving each program a turn on the CPU. This stops the computer crashing when too many programs are open.

Why: Gives only a basic, undeveloped point about giving each program a turn, with no linkage or application. Level 1.

4Discuss6 marksTranslators Swap Remove

A company writes a photo editing program in a high-level language. The company will sell the finished program to customers. Each customer will install the program on their own computer and run it many times.

Discuss whether the company should use a compiler or an interpreter to translate the program before it is sold.

Your answer should include:

  • the output of each type of translator
  • whether the program has to be translated each time it is run
  • what the customer needs on their computer to run the program.
[6 marks]
Mark scheme

Indicative content

The output of each type of translator

  • A compiler translates the whole program in one go and produces object code.
  • The object code is saved as an executable file, which is already in machine code so the processor can run it directly.
  • An interpreter does not produce object code, so no translated file exists for the company to save and sell.
  • An interpreter translates one line at a time and executes it immediately, but that translation is not kept.

Whether the program has to be translated each time it is run

  • Compiled code is translated once, so the executable can be run as many times as the customer likes without being translated again.
  • If the source code is edited, the whole program has to be compiled again to produce a new executable.
  • An interpreted program is translated again every time it is run, so a customer who runs the program often waits for translation at every run.
  • An executable runs faster than interpreted code because it is already in machine code.

What the customer needs on their computer to run the program

  • A customer who installs the executable needs no compiler on their computer, so the program will run straight away.
  • If the company supplied the source code instead, the customer would need an interpreter installed, and it would have to be an interpreter for their type of computer.
  • A customer given only the executable does not have the source code, so cannot change the program.

Conclusion

  • A compiler is the better choice for this company, because the executable can be sold and the customer runs it without it being translated again and without being given the source code.
  • Using an interpreter would mean supplying the source code to customers and translating the program on every run.

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 all three bullets for this company's program, including translating once rather than on every run, and reach a conclusion.

Do not accept 'a compiler fixes errors' (a compiler reports syntax errors at the end of translation, it does not fix them) or 'a compiler is easier to use' with no link to output, translation or the customer. Do not accept answers about translating to assembly language.

Example answers and how they were marked
Full marks6/6

The company should use a compiler. A compiler translates the whole program in one go and produces object code, which is saved as an executable file. This executable is already in machine code, so the customer's processor can run it directly. The program is translated only once, so a customer who runs the program many times does not wait for it to be translated again, and it runs faster than interpreted code would. An interpreter produces no object code, so the company would have nothing to sell as an executable. The customer would have to be given the source code and would need an interpreter installed on their computer, and the program would be translated again every time it was run.

Why: Level 3. Covers the output of both translators (executable from the compiler, no object code from the interpreter), the effect of translating once rather than on every run, and what the customer needs on their computer, all applied to the company selling the program, with a clear conclusion.

Some marks3/6

A compiler produces an executable file, which the company can save and sell to its customers. An interpreter does not produce an executable file, so the customer would need the source code and an interpreter installed on their computer to run the program. This means a compiler is better for the company, because customers can just run the file they are given.

Why: Level 2. Gives the output of both translators and links this to what the customer needs, with a conclusion, but never says the compiled program is translated once while an interpreted one is translated on every run, so the reasoning is not developed enough for Level 3.

No marks0/6

The company should use a compiler because it is easier to write programs with a compiler and it fixes the errors in the program before the customers get it.

Why: Level 0. No creditworthy point: 'easier to write programs' is not linked to the output, the translation each run or the customer, and 'fixes the errors' is a misconception, as the mark scheme's guidance says a compiler only reports errors at the end of translation.

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.