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

Pick again
Print
1Short recall2 marksStored Program Computers Swap Remove

Computers use 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:

  • Program instructions are stored in main memory/RAM (1)
  • The data used by the program is stored in main memory/RAM (1)
  • The CPU fetches/reads instructions from main memory to execute them (1)
  • The program can be run without the instructions being input again (1)

Allow 'the program is stored in memory' for one mark.

Do not accept answers about programs being stored on secondary storage, such as a hard disk or USB memory stick.

Do not accept answers that only describe the von Neumann architecture (e.g. having a CPU and memory) without stating that instructions are stored in main memory.

Example answers and how they were marked
Full marks2/2

Both the program instructions and the data the program uses are held in the same main memory, and the CPU fetches these instructions from memory to execute them.

Why: Instructions stored in main memory (1) and the CPU fetches instructions from memory to execute them (1).

Some marks1/2

Program instructions are stored in main memory.

Why: Instructions stored in main memory (1). No second point about data being stored in the same memory or about the CPU fetching instructions.

No marks0/2

The program is saved on the hard disk so that it can be loaded into RAM when the user runs it.

Why: A near-miss about secondary storage, which the mark scheme says not to accept; the stored program concept is about instructions being held in main memory.

2Describe2 marksFile Management Swap Remove

A user saves a new file into a folder that already contains files.

Describe how the operating system prevents a new file overwriting an existing file.

[2 marks]
Mark scheme

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

  • Checks/compares the new file (name)/filename against the names of files already in the folder/directory (1) to see if the name is already in use (1)
  • Refuses to save/allow the new file when the (file) name already exists (1) so the existing file is not replaced/overwritten (1)
  • Prompts/asks the user to choose/enter a different (file) name (1) so both files can be saved without one replacing the other (1)

A point without a linked development can earn one mark.

For both marks, the development must follow/associate with the point.

Do not accept responses about defragmentation.

Do not accept the operating system making a backup copy, or warning the user that a file may be overwritten, without saying that the (file) name is checked or the new file is not saved.

Do not accept responses about process management or saving files to RAM.

Do not award a second mark for repeating the question, e.g. 'it stops the new file overwriting the existing file'.

Example answers and how they were marked
Full marks2/2

It checks the new file name against the names of files already in the folder (1) to see whether the name is already in use (1).

Why: Linked point (1) and development (1).

Some marks1/2

It checks the file name against the names already in the folder.

Why: Creditworthy point (1) on its own; no linked development, so one mark.

No marks0/2

It defragments the disk so there is room for the new file.

Why: Defragmentation is not accepted by the mark scheme.

3Calculate3 marksAdding Binary Numbers Swap Remove

Binary patterns can represent numbers.

(a)

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

[2 marks]
1286432168421
11011011
11011100
Mark scheme

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

  • 1011 (1)
  • 0111 (1)

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

Ignore a carry shown beyond the eighth bit.

Example answers and how they were marked
Full marks2/2

1011 0111

Why: 219 + 220 = 439, which needs 9 bits; the 8 bits that are kept are both correct (2).

Some marks1/2

0000 0111

Why: Forgets to carry the 1s. The second nibble is correct (1); the first is not.

No marks0/2

1101 1111

Why: Never carries. Neither nibble is correct.

(b)

State the name of the error that occurs when this addition is carried out.

[1 mark]
Mark scheme

Award one mark for:

  • overflow (error) (1)
Example answers and how they were marked
Full marks1/1

Overflow

Why: The result needs more bits than are available (1).

No marks0/1

Underflow

Why: A near miss: the result is too big for 8 bits, not too small.

No marks0/1

A syntax error

Why: A syntax error is a mistake in a program's code, not in arithmetic.

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