Click a paper to view its questions. The specification for the course is shown on the right. For each question, its specification references are listed and can be clicked to scroll the relevant part of the specification into view.

AS-Level 2024 June Paper 2AS-Level 2023 June Paper 2AS-Level 2022 June Paper 2AS-Level 2020 June Paper 2AS-Level 2019 June Paper 2AS-Level 2018 June Paper 2AS-Level 2017 June Paper 2AS-Level 2016 June Paper 2A-Level 2024 June Paper 2A-Level 2023 June Paper 2A-Level 2022 June Paper 2A-Level 2021 June Paper 2A-Level 2020 June Paper 2A-Level 2019 June Paper 2A-Level 2018 June Paper 2A-Level 2017 June Paper 2
AS-Level2022June1.1open2 marks

Describe the difference between natural numbers and integers.

In your answer, give one example of a number that is an integer but not a natural number.

1 mark for description: Natural numbers are positive numbers (including zero) // integers include negative numbers;

1 mark for example: Any example of a negative whole number (e.g., –2, –999);

AS-Level2022June1.2open2 marks

Describe what it means for a number to be irrational.

In your answer, give one example of an irrational number.

1 mark for description: An irrational number cannot be written as a fraction / ratio / quotient (with an integer numerator and an integer denominator);

1 mark for example: Any example of an irrational number (e.g., √2, π or e.) refer to Team leader if unsure;

R. Any value expressed to a fixed number of decimal places.

AS-Level2022June1.3multiple-choiceDiagram2 marks

Shade one lozenge in the Counting column to indicate which set of numbers is most suitable for counting and one lozenge in the Measuring column to indicate which set of numbers is most suitable for measuring real-world quantities.

  • A:Integer
  • B:Natural
  • C:Rational
  • D:Real

1 mark per correct lozenge:

Counting: B (Natural);

Measuring: D (Real);

R. More than one lozenge shaded in a column.

AS-Level2022June2.1calculation1 mark

Convert the decimal number 177 to unsigned binary using 8 bits.

10110001;

AS-Level2022June2.2calculation1 mark

Convert the decimal number 193 to hexadecimal.

C1;

AS-Level2022June3.1calculation2 marks

State, in decimal, the lowest and highest values that could be represented in unsigned binary when using 16 bits.

  • Lowest: 0;
  • Highest: 65535;
AS-Level2022June3.2calculationDiagram2 marks

Figure 1 and Figure 2 show the bit patterns of two unsigned binary integers.

Figure 1

0 0 0 1 0 1 0 1

Figure 2

0 0 0 0 0 1 1 1

Calculate the result of multiplying these two numbers together using binary multiplication. You must show your working in binary.

1 mark for showing three correct products:
00010101
00101010
01010100;

1 mark for the correct answer if some relevant working is shown: 10010011;

AS-Level2022June4.1open1 mark

ASCII is one character coding system.

Explain the term 'character code'.

A (unique) number used to represent a character;

R. code

AS-Level2022June4.2open2 marks

Explain why Unicode was introduced as an alternative to ASCII.

  • Introduced to support a larger range of characters;
  • Due to increased international communication // use of files in multiple countries // requirement to use additional symbols (e.g., mathematical/scientific symbols) // facilitates interchange of documents between countries; // culturally unacceptable to only allow non-English speaking countries to communicate in English// (concurrent) support for multiple languages
AS-Level2022June4.3openDiagram2 marks

Figure 3 shows a 7-bit ASCII character code. The character code is to be sent across a network using a parity system.

Figure 3

0 0 1 0 1 1 1

Describe how the parity bit would be generated for the character code in Figure 3 using even parity.

  • The number of 1s is summed/counted; if the total is even, the parity bit is set to 0, otherwise it is set to 1;
  • The parity bit is set to ensure the total number of 1s is even;

The bits are XOR'd with each other; and the result is the parity bit;

AS-Level2022June4.4open1 mark

Write the parity bit below to complete the byte that will be sent using even parity.

0 0 1 0 1 1 1

0;

AS-Level2022June4.5calculation3 marks

The bit pattern 1000001 represents the character 'A' in 7-bit ASCII. Other characters follow on from this in sequence. For example, the bit pattern 1000100 represents the character 'D'.

The bit pattern 1000100 1000001 1000010 represents 'DAB' in 7-bit ASCII.

What bit pattern results from encrypting the string 'DAB' using a Vernam cipher with the key 'EGG'? You must show your working.

  • Showing that 'EGG' is represented by 1000101 1000111 1000111;
  • Providing a 21-bit answer that is not 'DAB' or 'EGG';
  • Correct answer (reached by applying XOR): 0000001 0000110 0000101;
AS-Level2022June5.1open2 marks

Describe the difference between analogue and digital data.

  • Analogue data is continuous // analogue data can take any value in a given range // between any two analogue values there is another value;
  • Digital data has discrete values // can be stored as binary values / 1s and 0s;
AS-Level2022June5.2open3 marks

Describe the steps that an analogue to digital converter (ADC) carries out when converting a sound signal.

  • The ADC takes samples of the (analogue/continuous electrical) signal/voltage/wave at regular intervals;
  • The samples are quantised // the amplitude of each sample is approximated to an integer value // the amplitude (A. height) of samples are measured;
  • Each sample is assigned a binary value / encoded as a binary value;
AS-Level2022June6.1open1 mark

Define the term 'software'.

Software is the name given to programs / code / instructions that are executed;

AS-Level2022June6.2open2 marks

Translators are one type of system software.

Give two other types of system software.

Type 1

Type 2

  • Operating systems / OS;
  • Utility programs;
  • Libraries;
  • A. Specific examples of utilities (such as virus checker, disk defragmenter) unless the student has already given the type utilities as a response;
  • R. Interpreters, compilers, assemblers;
AS-Level2022June6.3open2 marks

Some compilers translate source code into an intermediate language rather than producing an executable file. Bytecode is one example of an intermediate language.

Explain how intermediate language code is used after it has been generated.

  • Software must be used to finish the translation process (on the computer running the program);
  • The (JIT compiler) compiles the intermediate language code / bytecode into machine code for the processor / platform / computer it is being executed on;
  • Use a virtual machine // a just-in-time / JIT compiler;
  • (The virtual machine will) interpret / translate / execute the intermediate language code / bytecode // call functions within its own code to carry out the command;
  • Each processor instruction set / architecture will have its own virtual machine;
AS-Level2022June6.4open1 mark

Give one reason why some compilers produce their final output in an intermediate language instead of machine code.

  • Allows processor / platform independence // code is more portable / cross-platform;
  • Compiler is only required to translate source code once (but the intermediate language / bytecode can still be executed on a variety of platforms);
  • Can create intermediate language code / bytecode for a specific (standardised) virtual machine that all the target machines have installed;
  • The virtual machine can perform security checks on the (intermediate language / byte) code without execution, hence it is more secure;
AS-Level2022June7.1openDiagram1 mark

State which logic gate has the truth table shown in Figure 4.

Figure 4

ABQ
001
010
100
110

NOR;

AS-Level2022June7.2openDiagram1 mark

State the logic gate that is represented by the symbol shown in Figure 5.

Figure 5

[Symbol]

NAND;

AS-Level2022June7.3diagram2 marks

Draw the logic circuit for the following Boolean expression.

Q = A + (B • C)

  • A and B are connected to the inputs of an AND gate and the output of the AND gate connected to the input of a NOT gate // A and B connected to the inputs of a NAND gate;
  • The final two gates in the circuit are an OR gate followed by a NOT gate // The final gate in the circuit is a NOR gate;
  • Award 2 marks if the candidate has correctly simplified the Boolean expression and drawn a fully correct logic circuit;
  • MAX 1 if circuit does not correctly reflect the Boolean expression;
AS-Level2022June7.4calculation3 marks

Complete the truth table below.

ABB'A+B(A+B)•B'
00110
01000
10110
11011

Using the final column, give a simplified Boolean expression for (A + B)•B'

Answer

  • 1 mark for showing the correct truth table column for (A+B)•B';
  • 1 mark for showing the correct truth table column for A+B;
  • 1 mark for showing the correct answer as A • B';
AS-Level2022June7.5calculation4 marks

Using the rules and identities of Boolean algebra, simplify the following Boolean expression.

(A + B) • (A + B')

Answer

  • Award marks for working out until an incorrect step has been made;
  • If simplifying multiple parts simultaneously, award all relevant marks but do not award further marks for incorrectly simplified parts;
  • 1 mark for final answer of A • B';
  • 3 marks for correct working, with marks awarded for each of the following techniques:
    • Applying De Morgan's Theorem;
    • Multiplying and/or factorising brackets;
    • Using a law or identity;
AS-Level2022June8.1tableDiagram3 marks

The fetch-execute cycle involves the Current Instruction Register (CIR), Control Unit, Memory Address Register (MAR), Memory Buffer Register (MBR) and Program Counter (PC).

Figure 6 lists four events that can take place during one cycle of the fetch-execute cycle. The events are labelled A to D.

Some events that take place during the fetch-execute cycle are not listed.

Put these events in the order they would occur in the fetch-execute cycle when an ADD instruction is executed.

Write the numbers 1 to 4 beside each description in Figure 6 to indicate the order in which the events occur. The number 1 should be used to indicate the event that would happen first.

Figure 6

DescriptionOrder (1 to 4)
A The contents of the MBR are copied to the CIR.
B The contents of the PC are copied to the MAR.
C The Control Unit decodes the contents of the CIR.
D The result of the calculation is stored.
  • B The contents of the PC are copied to the MAR. (1);
  • A The contents of the MBR are copied to the CIR. (2);
  • C The Control Unit decodes the contents of the CIR. (3);
  • D The result of the calculation is stored. (4);
  • 3 marks for all correct;
  • 2 marks for two correct;
  • 1 mark for one correct;
  • R. Labels used more than once.
AS-Level2022June8.2open2 marks

Describe the role of main memory in the execution of computer programs.

  • Main memory stores the instructions to be executed (and any data required by those instructions);
  • Main memory returns the instructions/data/value stored in a memory location (specified on the address bus) (using the data bus);
  • Program is transferred from secondary storage into main memory (if program not already in main memory) when program execution is requested;
  • Main memory stores any value/data resulting from the execution of the program;
  • MAX 2
AS-Level2022June8.3open1 mark

State the name of the processor component that is responsible for performing mathematical operations such as addition and multiplication.

A. Arithmetic logic unit // ALU;

AS-Level2022June8.4open1 mark

Explain why increasing the data bus width can lead to improvements in processor performance.

  • A. Increases the amount of data that can be transferred over the bus at once;
  • A. Fewer transfers are needed to transfer the same amount of data;
  • NE. Data can be transferred quicker / more data per unit of time.
  • NE. More data can be transferred.
  • MAX 1
AS-Level2022June8.5open2 marks

Identify the bus that would need to be changed and state the change needed so that the maximum amount of memory addressable by the processor would be doubled.

Bus to change

Change needed

  • A. The address bus;
  • A. Width increased by 1;
AS-Level2022June9.1multiple-choiceDiagram1 mark

Shade one lozenge to show which of the assembly instructions in Figure 7 uses immediate addressing.

Figure 7

InstructionImmediate Addressing
A LDR R3, 42
B MOV R3, #42
C STR R3, 101
D SUB R3, R2, R1
  • A:LDR R3, 42
  • B:MOV R3, #42
  • C:STR R3, 101
  • D:SUB R3, R2, R1
  • B MOV R3, #42;
  • R. More than one lozenge shaded.
AS-Level2022June9.2open4 marks

A computer program is required that will multiply the value stored in X by 2 if it is less than 50 and leave it unchanged if it is 50 or more.

The algorithm for this task can be written in pseudocode as:

IF X < 50 THEN
X ← X * 2
ENDIF

Write an assembly language program using the AQA assembly language instruction set shown in Table 1 to carry out this task.

At the start, the value of X is stored in memory location 101.

  • 1 mark for each program point:
    • Loading value from 101 into R1 (e.g., LDR R1, 101);
    • Comparing R1 against the operand 50 (e.g., CMP R1, #50);
    • Branching using BGT and BEQ, or BLT, with a suitable label;
    • Using a logical shift left to double the number (e.g., LSL R1, R1, #1);
    • Storing the value (even if incorrect) in R1 back to memory location 101;
  • MAX 3 marks for programming if any syntax incorrect or program does not work correctly under all circumstances.
  • Max 4
AS-Level2022June10.1open2 marks

Describe the purpose of start and stop bits in asynchronous data transfer.

  • Purpose of start bit (Max 1):
    • A. Start the receiver clock (ticking);
    • A. To wake up the receiver;
    • A. Synchronise / bring into phase the clock in the transmitter to the receiver clock;
    • NE. Synchronise the (two) clocks.
  • Purpose of stop bit (Max 1):
    • A. Allows the next start bit to be recognised;
    • A. Provides time for the receiver to process / transfer the received data;
    • A. Allows received data to be processed;
    • NE. Signals received data can be processed.
AS-Level2022June10.2open1 mark

Protocols are used in computer networking.

Define the term 'protocol'.

A set of rules (governing communication between devices);

R. instructions

AS-Level2022June10.3open1 mark

Users of a computer network will experience latency.

Define the term 'latency'.

Latency is the (measure of) delay between an action being initiated and its effect being observable // the time taken for data to get to its destination (and back);

AS-Level2022June10.4open2 marks

Explain how a physical star topology can behave logically as a bus network.

  • Use a bus transmission protocol;
  • A. Examples of bus protocols, e.g., CSMA/CD;
  • A. Use appropriate (physical) switching // (switch) creates temporary buses between two nodes;
  • A. Hub transmits data to all devices;
AS-Level2022June11open12 marks

An international technology company produces a smart speaker for use in homes. The smart speaker can be controlled by a user providing voice commands, which means the device must always be listening for audio input. The company stores audio recordings of each user to analyse when improving its voice recognition algorithms. The audio recordings are compressed using lossy compression and then sent over the Internet to be stored at the company's headquarters.

Discuss a range of ethical, legal and cultural issues that are raised by the company storing the audio captured by its smart speakers and justify why the company might use lossy compression.

You will be assessed on your ability to follow a line of reasoning to produce a coherent, relevant and structured response.

  • Level of response marking with levels from 1 to 4:
    • 4: A line of reasoning has been followed to produce a coherent, relevant, substantiated, and logically structured response. Answers in this level will demonstrate a clear justification of the use of lossy compression and show a developed awareness of how the benefits of lossy compression are related to one another. The response covers all four aspects (lossy, ethical, legal, cultural) of the question. A range of the points made will have been expanded upon using clear examples and references to real-world implications. (10–12 marks)
    • 3: A line of reasoning has been followed to produce a coherent, relevant, substantiated, and logically structured response. Answers in this level will address the use of lossy compression but there may not always be a clearly demonstrated understanding of the benefits. The response covers at least three aspects (lossy, ethical, legal, cultural) of the question. Some points made will have been expanded on and some of these will have been expanded upon using examples but these might not always exemplify the points made or lack references to real-world implications. (7–9 marks)
    • 2: A line of reasoning has been followed to produce a mostly coherent, relevant, substantiated, and logically structured response. The response lists some issues that focus on only two or three aspects (lossy, ethical, legal, cultural) of the question. Some points made will have been expanded upon but lack clear examples or may not wholly relate to the points being made. (4–6 marks)
    • 1: No evidence that a line of reasoning has been followed. Answers in this level may identify a point relating to the use of lossy compression but this part of the question may not be addressed at all. The response will attempt to identify some issues raised by the question; points are not likely to be expanded upon but where they are, examples may be irrelevant or not relate to the points being made. (1–3 marks)
  • Indicative content for lossy compression justification:
    • Scale/volume of data: the company has a large volume of audio to store due to the number of users;
    • Size of files: lossy compression reduces file size for transmission/storage, offering greater compression than lossless;
    • Audio quality: files retain enough quality to allow analysis, removing unnecessary/redundant data while maintaining usability.
  • Indicative content for ethical, legal, and cultural issues:
    • Ethical issues, such as:
      • The company has a justifiable goal of improving algorithms, benefiting customers, especially individuals who may rely on voice controls.
      • The company may capture illegal activity, raising questions about reporting responsibilities.
      • Employees could misuse recordings, and inappropriate material exposure may affect employee welfare.
      • Concerns about privacy erosion in homes and obtaining informed consent for data collection.
      • Potential for distrust between users and the company, and risks of data misuse.
    • Legal issues, including:
      • Compliance with data laws like GDPR or Data Protection Act, ensuring data security, integrity, confidentiality, and availability.
      • International legislative compliance for data transmission and storage, and risks of legislative circumvention.
    • Cultural issues, such as:
      • Data use for algorithm improvement, allowing for better support of dialects, languages, or disabilities.
      • Respecting cultural norms or expectations of privacy across different regions.

Paper 2 covers sections 5-9 of the AQA AS Computer Science specification.

5 Fundamentals of data representation

5.1 Number systems

5.1.1 Natural numbers

ReferenceContentAdditional information
5.1.1.1
View

Be familiar with the concept of a natural number and the set ℕ of natural numbers (including zero).

ℕ = {0, 1, 2, 3, …}

5.1.2 Integer numbers

ReferenceContentAdditional information
5.1.2.1
View

Be familiar with the concept of an integer and the set ℤ of integers.

ℤ = { …, -3, -2, -1, 0, 1, 2, 3, … }

5.1.3 Rational numbers

ReferenceContentAdditional information
5.1.3.1
View

Be familiar with the concept of a rational number and the set ℚ of rational numbers, and that this set includes the integers.

ℚ is the set of numbers that can be written as fractions (ratios of integers). Since a number such as 7 can be written as 7/1, all integers are rational numbers.

5.1.4 Irrational numbers

ReferenceContentAdditional information
5.1.4.1
View

Be familiar with the concept of an irrational number.

An irrational number is one that cannot be written as a fraction, for example √2.

5.1.5 Real numbers

ReferenceContentAdditional information
5.1.5.1
View

Be familiar with the concept of a real number and the set ℝ of real numbers, which includes the natural numbers, the rational numbers, and the irrational numbers.

ℝ is the set of all 'possible real world quantities'.

5.1.6 Ordinal numbers

ReferenceContentAdditional information
5.1.6.1
View

Be familiar with the concept of ordinal numbers and their use to describe the numerical positions of objects.

When objects are placed in order, ordinal numbers are used to tell their position. For example, if we have a well-ordered set S = {'a', 'b', 'c', 'd'}, then 'a' is the 1st object, 'b' the 2nd, and so on.

5.1.7 Counting and measurement

ReferenceContentAdditional information
5.1.7.1
View

Be familiar with the use of natural numbers for counting.

5.1.7.2
View

Be familiar with the use of real numbers for measurement.

5.2 Number bases

5.2.1 Number base

ReferenceContentAdditional information
5.2.1.1
View

Be familiar with the concept of a number base, in particular:

  • decimal (base 10)
  • binary (base 2)
  • hexadecimal (base 16)

Students should be familiar with expressing a number's base using a subscript as follows:

  • Base 10: Number10, eg 6710
  • Base 2: Number2, eg 100110112
  • Base 16: Number16, eg AE16
5.2.1.2
View

Convert between decimal, binary and hexadecimal number bases.

5.2.1.3
View

Be familiar with, and able to use, hexadecimal as a shorthand for binary and to understand why it is used in this way.

5.3 Units of information

5.3.1 Bits and bytes

ReferenceContentAdditional information
5.3.1.1
View

Know that the bit is the fundamental unit of information.

A bit is either 0 or 1.

5.3.1.2
View

Know that a byte is a group of 8 bits.

5.3.1.3
View

Know that 2n different values can be represented with n bits.

For example, 3 bits can be configured in 23 = 8 different ways: 000, 001, 010, 011, 100, 101, 110, 111.

5.3.2 Units

ReferenceContentAdditional information
5.3.2.1
View

Know the names, symbols and corresponding powers of 10 for the decimal prefixes:

  • kilo, k - 103
  • mega, M - 106
  • giga, G - 109
  • tera, T - 1012
5.3.2.2
View

Know the names, symbols and corresponding powers of 2 for the binary prefixes:

  • kibi, Ki - 210
  • mebi, Mi - 220
  • gibi, Gi - 230
  • tebi, Ti - 240
5.3.2.3
View

Know that quantities of bytes can be described using binary prefixes representing powers of 2 or using decimal prefixes representing powers of 10, eg one kibibyte is written as 1KiB = 210 B and one kilobyte is written as 1 kB = 103 B.

Historically the terms kilobyte, megabyte, etc have often been used when kibibyte, mebibyte, etc are meant.

5.4 Binary number system

5.4.1 Unsigned binary

ReferenceContentAdditional information
5.4.1.1
View

Know the difference between unsigned binary and signed binary.

Students are expected to be able to convert between unsigned binary and decimal and vice versa.

5.4.1.2
View

Know that in unsigned binary the minimum and maximum values for a given number of bits, n, are 0 and 2n - 1 respectively.

5.4.2 Unsigned binary arithmetic

ReferenceContentAdditional information
5.4.2.1
View

Be able to add two unsigned binary integers.

5.4.2.2
View

Be able to multiply two unsigned binary integers.

5.4.3 Signed binary using two's complement

ReferenceContentAdditional information
5.4.3.1
View

Know that signed binary can be used to represent negative integers and that one possible coding scheme is two's complement.

This is the only representation of negative integers that will be examined. Students are expected to be able to convert between signed binary and decimal and vice versa.

5.4.3.2
View

Know how to represent negative and positive integers in two's complement.

5.4.3.3
View

Know how to perform subtraction using two's complement.

5.4.3.4
View

Know how to calculate the range of a given number of bits, n.

5.4.4 Numbers with a fractional part

ReferenceContentAdditional information
5.4.4.1
View

Know how numbers with a fractional part can be represented in fixed point form in binary in a given number of bits.

5.4.4.2
View

Be able to convert decimal to fixed point binary of a given number of bits.

5.4.4.3
View

Be able to convert fixed point binary to decimal of a given number of bits.

5.5 Information coding systems

5.5.1 Character form of a decimal digit

ReferenceContentAdditional information
5.5.1.1
View

Differentiate between the character code representation of a decimal digit and its pure binary representation.

5.5.2 ASCII and Unicode

ReferenceContentAdditional information
5.5.2.1
View

Describe ASCII and Unicode coding systems for coding character data.

5.5.2.2
View

Explain why Unicode was introduced.

5.5.3 Error checking and correction

ReferenceContentAdditional information
5.5.3.1
View

Describe and explain the use of parity bits.

5.5.3.2
View

Describe and explain the use of majority voting.

5.5.3.3
View

Describe and explain the use of check digits.

5.5.3.4
View

Evaluate the use of parity bits, majority voting and check digits

5.6 Representing images, sound and other data

5.6.1 Bit patterns, images, sound and other data

ReferenceContentAdditional information
5.6.1.1
View

Describe how bit patterns may represent other forms of data, including graphics and sound.

5.6.2 Analogue and digital

ReferenceContentAdditional information
5.6.2.1
View

Understand the difference between analogue and digital:

  • data
  • signals

5.6.3 Analogue/digital conversion

ReferenceContentAdditional information
5.6.3.1
View

Describe the principles of operation of an analogue to digital converter (ADC).

5.6.3.2
View

Describe the principles of operation of a digital to analogue converter (DAC).

5.6.4 Bitmapped graphics

ReferenceContentAdditional information
5.6.4.1
View

Explain how bitmaps are represented.

5.6.4.2
View

Explain resolution.

Resolution is expressed as number of dots per inch where a dot is a pixel.

5.6.4.3
View

Know that colour depth is the number of bits stored for each pixel.

5.6.4.4
View

Know that the size of an image in pixels is width of image in pixels × height of image in pixels.

The size of an image is also alternatively sometimes described as the resolution of an image.

5.6.4.5
View

Calculate storage requirements for bitmapped images and be aware that bitmap image files may also contain metadata.

Ignoring metadata, storage requirements = size in pixels x colour depth where size in pixels is width in pixels x height in pixels.

5.6.4.6
View

Be familiar with typical metadata.

eg width, height, colour depth.

5.6.5 Digital representation of sound

ReferenceContentAdditional information
5.6.5.1
View

Describe the digital representation of sound.

5.6.5.2
View

Understand sample resolution and its effect on the quality of audio recordings.

5.6.5.3
View

Understand sampling rate and its effect on the quality of audio recordings.

5.6.5.4
View

Know Nyquist's theorem.

5.6.5.5
View

Calculate sound sample sizes in bytes.

5.6.6 Musical Instrument Digital Interface (MIDI)

ReferenceContentAdditional information
5.6.6.1
View

Describe the purpose of MIDI and the use of event messages in MIDI.

5.6.6.2
View

Describe the advantages of using MIDI files for representing music.

5.6.7 Data compression

ReferenceContentAdditional information
5.6.7.1
View

Know why images and sound files are often compressed and that other files, such as text files, can also be compressed.

5.6.7.2
View

Understand the difference between lossless and lossy compression and explain the advantages and disadvantages of each.

5.6.7.3
View

Explain the principles behind run length encoding (RLE) for lossless compression.

5.6.7.4
View

Explain the principles behind dictionary-based methods for lossless compression.

5.6.8 Encryption

ReferenceContentAdditional information
5.6.8.1
View

Understand what is meant by encryption and be able to define it.

Caesar and Vernam ciphers are at opposite extremes. One offers perfect security, the other doesn't. Between these two types are ciphers that are computationally secure – see below. Students will be assessed on the two types. Ciphers other than Caesar may be used to assess students' understanding of the principles involved. These will be explained and be similar in terms of computational complexity.

5.6.8.2
View

Be familiar with the term cipher.

5.6.8.3
View

Be familiar with the term plaintext.

5.6.8.4
View

Be familiar with the term ciphertext.

5.6.8.5
View

Be familiar with Caesar cipher and be able to apply it to encrypt a plaintext message and decrypt a ciphertext.

5.6.8.6
View

Be able to explain why Caesar cipher is easily cracked.

5.6.8.7
View

Be familiar with Vernam cipher or one-time pad and be able to apply it to encrypt a plaintext message and decrypt a ciphertext.

Since the key k is chosen uniformly at random, the ciphertext c is also distributed uniformly. The key k must be used once only. The key k is known as a one-time pad.

5.6.8.8
View

Explain why Vernam cipher is considered as a cypher with perfect security.

5.6.8.9
View

Compare Vernam cipher with ciphers that depend on computational security.

Vernam cipher is the only one to have been mathematically proved to be completely secure. The worth of all other ciphers ever devised is based on computational security. In theory, every cryptographic algorithm except for Vernam cipher can be broken, given enough ciphertext and time.

6 Fundamentals of computer systems

6.1 Hardware and software

6.1.1 Relationship between hardware and software

ReferenceContentAdditional information
6.1.1.1
View

Define the term hardware.

6.1.1.2
View

Define the term software.

6.1.1.3
View

Understand the relationship between hardware and software.

6.1.2 Classification of software

ReferenceContentAdditional information
6.1.2.1
View

Explain what is meant by system software.

6.1.2.2
View

Explain what is meant by application software.

6.1.2.3
View

Understand the need for, and attributes of, different types of software.

6.1.3 System software

ReferenceContentAdditional information
6.1.3.1
View

Know that system software includes operating systems (OSs), utility programs, libraries and translators (compiler, assembler, interpreter).

6.1.3.2
View

Understand the need for, and functions of operating systems (OSs).

6.1.3.3
View

Understand the need for, and functions of utility programs.

6.1.3.4
View

Understand the need for, and functions of libraries.

6.1.3.5
View

Understand the need for, and functions of translators (compiler, assembler, interpreter).

6.1.4 Role of an operating system (OS)

ReferenceContentAdditional information
6.1.4.1
View

Understand that a role of the operating system is to hide the complexities of the hardware.

6.1.4.2
View

Know that the OS handles resource management, managing hardware to allocate processors, memories and I/O devices among competing processes.

6.2 Classification of programming languages

6.2.1 Classification of programming languages

ReferenceContentAdditional information
6.2.1.1
View

Show awareness of the development of types of programming languages and their classification into low- and high-level languages.

6.2.1.2
View

Know that low-level languages are considered to be:

  • machine-code
  • assembly language
6.2.1.3
View

Know that high-level languages include imperative high-level language.

6.2.1.4
View

Describe machine-code language and assembly language.

6.2.1.5
View

Understand the advantages and disadvantages of machine-code and assembly language programming compared with high-level language programming.

6.2.1.6
View

Explain the term 'imperative high-level language' and its relationship to low-level languages.

6.3 Types of program translator

6.3.1 Types of program translator

ReferenceContentAdditional information
6.3.1.1
View

Understand the role of assemblers.

6.3.1.2
View

Understand the role of compilers.

6.3.1.3
View

Understand the role of interpreters.

6.3.1.4
View

Explain the differences between compilation and interpretation. Describe situations in which each would be appropriate.

6.3.1.5
View

Explain why an intermediate language such as bytecode is produced as the final output by some compilers and how it is subsequently used.

6.3.1.6
View

Understand the difference between source and object (executable) code.

6.4 Logic gates

6.4.1 Logic gates

ReferenceContentAdditional information
6.4.1.1
View

Construct truth tables for the NOT logic gate.

Students should know and be able to use ANSI/IEEE standard 91-1984 Distinctive shape logic gate symbols for these logic gates.

6.4.1.2
View

Construct truth tables for the AND logic gate.

6.4.1.3
View

Construct truth tables for the OR logic gate.

6.4.1.4
View

Construct truth tables for the XOR logic gate.

6.4.1.5
View

Construct truth tables for the NAND logic gate.

6.4.1.6
View

Construct truth tables for the NOR logic gate.

6.4.1.7
View

Be familiar with drawing and interpreting logic gate circuit diagrams involving one or more of the above gates.

6.4.1.8
View

Complete a truth table for a given logic gate circuit.

6.4.1.9
View

Write a Boolean expression for a given logic gate circuit.

6.4.1.10
View

Draw an equivalent logic gate circuit for a given Boolean expression.

6.5 Boolean algebra

6.5.1 Using Boolean algebra

ReferenceContentAdditional information
6.5.1.1
View

Be familiar with the use of Boolean identities and De Morgan's laws to manipulate and simplify Boolean expressions.

7 Fundamentals of computer organisation and architecture

7.1 Internal hardware components of a computer

7.1.1 Internal hardware components of a computer

ReferenceContentAdditional information
7.1.1.1
View

Have an understanding and knowledge of the basic internal components of a computer system.

Although exam questions about specific machines will not be asked, it might be useful to base this section on the machines used at the centre.

7.1.1.2
View

Understand the role of the processor.

7.1.1.3
View

Understand the role of main memory.

7.1.1.4
View

Understand the role of the address bus.

7.1.1.5
View

Understand the role of the data bus.

7.1.1.6
View

Understand the role of the control bus.

7.1.1.7
View

Understand the role of I/O controllers.

7.1.1.8
View

Be able to explain the difference between von Neumann and Harvard architectures and describe where each is typically used.

Embedded systems such as digital signal processing (DSP) systems use Harvard architecture processors extensively. Von Neumann architecture is used extensively in general purpose computing systems.

7.1.1.9
View

Understand the concept of addressable memory.

7.2 The stored program concept

7.2.1 The meaning of the stored program concept

ReferenceContentAdditional information
7.2.1.1
View

Be able to describe the stored program concept: machine code instructions stored in main memory are fetched and executed serially by a processor that performs arithmetic and logical operations.

7.3 Structure and role of the processor and its components

7.3.1 The processor and its components

ReferenceContentAdditional information
7.3.1.1
View

Explain the role and operation of the arithmetic logic unit.

7.3.1.2
View

Explain the role and operation of the control unit.

7.3.1.3
View

Explain the role and operation of the clock.

7.3.1.4
View

Explain the role and operation of general-purpose registers.

7.3.1.5
View

Explain the role and operation of the program counter.

7.3.1.6
View

Explain the role and operation of the current instruction register.

7.3.1.7
View

Explain the role and operation of the memory address register.

7.3.1.8
View

Explain the role and operation of the memory buffer register.

7.3.1.9
View

Explain the role and operation of the status register.

7.3.2 The Fetch-Execute cycle and the role of registers within it

ReferenceContentAdditional information
7.3.2.1
View

Explain how the Fetch-Execute cycle is used to execute machine code programs, including the stages in the cycle (fetch, decode, execute) and details of registers used.

7.3.3 The processor instruction set

ReferenceContentAdditional information
7.3.3.1
View

Understand the term 'processor instruction set' and know that an instruction set is processor specific.

7.3.3.2
View

Know that instructions consist of an opcode and one or more operands (value, memory address or register).

A simple model will be used in which the addressing mode will be incorporated into the bits allocated to the opcode so the latter defines both the basic machine operation and the addressing mode. Students will not be expected to define opcode, only interpret opcodes in the given context of a question.

For example, 4 bits have been allocated to the opcode (3 bits for basic machine operation, eg ADD, and 1 bit for the addressing mode). 4 bits have been allocated to the operand, making the instruction, opcode + operand, 8 bits in length. In this example, 16 different opcodes are possible (24 = 16).

OpcodeOperand
Basic Machine OperationAddressing Mode
00100101

7.3.4 Addressing modes

ReferenceContentAdditional information
7.3.4.1
View

Understand and apply immediate addressing.

Immediate addressing: the operand is the datum.

7.3.4.2
View

Understand and apply direct addressing.

Direct addressing: the operand is the address of the datum. Address to be interpreted as meaning either main memory or register.

7.3.5 Machine-code/assembly language operations

ReferenceContentAdditional information
7.3.5.1
View

Understand and apply the basic machine-code operations of:

  • load
  • add
  • subtract
  • store
  • branching (conditional and unconditional)
  • compare
  • logical bitwise operators (AND, OR, NOT, XOR)
  • logical
  • shift right
  • shift left
  • halt

Use the basic machine-code operations above when machine-code instructions are expressed in mnemonic form—assembly language, using immediate and direct addressing.

7.3.6 Factors affecting processor performance

ReferenceContentAdditional information
7.3.6.1
View

Explain the effect on processor performance of multiple cores.

7.3.6.2
View

Explain the effect on processor performance of cache memory.

7.3.6.3
View

Explain the effect on processor performance of clock speed.

7.3.6.4
View

Explain the effect on processor performance of word length.

7.3.6.5
View

Explain the effect on processor performance of address bus width.

7.3.6.6
View

Explain the effect on processor performance of data bus width.

7.4 External hardware devices

7.4.1 Input and output devices

ReferenceContentAdditional information
7.4.1.1
View

Know the main characteristics, purpose and suitability of barcode readers and understand their principles of operation.

7.4.1.2
View

Know the main characteristics, purpose and suitability of digital cameras and understand their principles of operation.

7.4.1.3
View

Know the main characteristics, purpose and suitability of laser printers and understand their principles of operation.

7.4.1.4
View

Know the main characteristics, purpose and suitability of RFID and understand their principles of operation.

7.4.2 Secondary storage devices

ReferenceContentAdditional information
7.4.2.1
View

Explain the need for secondary storage within a computer system.

7.4.2.2
View

Know the main characteristics, purposes, suitability and understand the principles of operation of the hard disk.

7.4.2.3
View

Know the main characteristics, purposes, suitability and understand the principles of operation of the optical disk.

7.4.2.4
View

Know the main characteristics, purposes, suitability and understand the principles of operation of the solid-state disk (SSD).

SSD = NAND flash memory + a controller that manages pages, and blocks and complexities of writing. Based on floating gate transistors that trap and store charge. A block, made up of many pages, cannot overwrite pages; a page has to be erased before it can be written to but technology requires the whole block to be erased. Lower latency and faster transfer speeds than a magnetic disk drive.

7.4.2.5
View

Compare the capacity and speed of access of various media and make a judgement about their suitability for different applications.

8 Consequences of uses of computing

8.1 Individual (moral), social (ethical), legal and cultural issues and opportunities

ReferenceContentAdditional information
8.1.1
View

Show awareness of current individual (moral), social (ethical), legal and cultural opportunities and risks of computing.

Understand that:

  • developments in computer science and digital technologies have dramatically altered the shape of communications and information flows in societies, enabling massive transformations in the capacity to:
    • monitor behaviour
    • amass and analyse personal information
    • distribute, publish, communicate and disseminate personal information
  • computer scientists and software engineers therefore have power, as well as the responsibilities that go with it, in the algorithms that they devise and the code that they deploy.
  • software and their algorithms embed moral and cultural values.
  • the issue of scale, for software the whole world over, creates potential for individual computer scientists and software engineers to produce great good, but with it comes the ability to cause great harm.

Be able to discuss the challenges facing legislators in the digital age.

Teachers may wish to employ two very powerful techniques, hypotheticals and case studies, to engage students in the issues.

Hypotheticals allow students to isolate quickly important ethical principles in an artificially simplified context. For example, a teacher might ask students to explain and defend how, as a Google project manager, they would evaluate a proposal to bring Google's Street View technology to a remote African village. What questions should be asked? Who should be consulted? What benefits, risks and safeguards considered? What are the trade-offs?

Case studies allow students to confront the tricky interplay between the sometimes competing ethical values and principles relevant in real world settings. For example, the Google Street View case might be used to tease out the ethical conflicts between individual and cultural expectations, the principle of informed consent, Street View's value as a service, its potential impact on human perceptions and behaviours, and its commercial value to Google and its shareholders.

There are many resources available on the Internet to support teaching of this topic.

9 Fundamentals of communication and networking

9.1 Communication

9.1.1 Communication methods

ReferenceContentAdditional information
9.1.1.1
View

Define serial transmission methods.

9.1.1.2
View

Define parallel transmission methods.

9.1.1.3
View

Discuss the advantages of serial over parallel transmission.

9.1.1.4
View

Define and compare synchronous and asynchronous data transmission.

9.1.1.5
View

Describe the purpose of start and stop bits in asynchronous data transmission.

9.1.2 Communication basics

ReferenceContentAdditional information
9.1.2.1
View

Define baud rate.

9.1.2.2
View

Define bit rate.

9.1.2.3
View

Define bandwidth.

9.1.2.4
View

Define latency.

9.1.2.5
View

Define protocol.

9.1.2.6
View

Differentiate between baud rate and bit rate.

Bit rate can be higher than baud rate if more than one bit is encoded in each signal change.

9.1.2.7
View

Understand the relationship between bit rate and bandwidth.

Bit rate is directly proportionate to bandwidth.

9.2 Networking

9.2.1 Network topology

ReferenceContentAdditional information
9.2.1.1
View

Understand and explain the operation of a physical star topology.

9.2.1.2
View

Understand and explain the operation of a logical bus network topology.

A network physically wired in star topology can behave logically as a bus network by using a bus protocol and appropriate physical switching.

9.2.1.3
View

Differentiate between the physical star topology and the logical bus network topology.

9.2.2 Types of networking between hosts

ReferenceContentAdditional information
9.2.2.1
View

Explain peer-to-peer networking and describe situations where it might be used.

In a peer-to-peer network, each computer has equal status.

9.2.2.2
View

Explain client-server networking and describe situations where it might be used.

In a client-server network, most computers are nominated as clients and one or more as servers. The clients request services from the servers, which provide these services, for example file server, email server.

9.2.3 Wireless networking

ReferenceContentAdditional information
9.2.3.1
View

Explain the purpose of WiFi.

A wireless local area network that is based on international standards.

Used to enable devices to connect to a network wirelessly.

9.2.3.2
View

Be familiar with the components required for wireless networking.

  • Wireless network adapter
  • Wireless access point
9.2.3.3
View

Be familiar with the purpose of Service Set Identifier (SSID).

9.2.3.4
View

Be familiar with how wireless networks are secured using WPA (Wifi Protected Access)/WPA2.

9.2.3.5
View

Be familiar with how wireless networks are secured by disabling SSID (Service Set Identifier) broadcasting.

9.2.3.6
View

Be familiar with how wireless networks are secured using a MAC (Media Access Control) address allow list.

9.2.3.7
View

Explain the wireless protocol Carrier Sense Multiple Access with Collision Avoidance (CSMA/CA) with and without Request to Send/Clear to Send (RTS/CTS).