Computer Science 9618/12 May/June 2025: question paper and mark scheme
Cambridge AS & A Level Computer Science (9618), Paper 1 Theory Fundamentals, May/June 2025. Read both free below, or download them. Done the paper? Get it marked by AI against this mark scheme.
(a) The table has six statements about the Von Neumann model for a computer system.
Three of the statements are incorrect.
Statement number Statement
The Program Counter (PC) stores the next instruction to be fetched from
1 memory.
The Arithmetic and Logic Unit (ALU) performs mathematical and logical
2 operations.
3 The Control Unit (CU) sends signals to other components on the data bus.
The Memory Data Register (MDR) transfers data to the memory address
4 stored in the Memory Address Register (MAR).
5 The MAR stores an address from memory.
6 The Accumulator (ACC) stores the result of calculations.
Complete the table by writing the three incorrect statement numbers and the corrected statements.
Incorrect
Corrected statement statement number
[3]
(b) Registers that are used in the Fetch-Execute (F-E) cycle include the PC, MAR, MDR and the
ACC.
Identify one other register and describe its role in the Fetch-Execute (F-E) cycle.
Register ……
Role ……
[2]
(c) Explain how an interrupt from an input device will be detected and handled in the F-E cycle.
…… [4]
Mark scheme
1(a) 1 mark for each correct row 3
Incorrect Corrected statement
statement
number
1 The Program Counter (PC) stores the address of the
next instruction to be fetched from memory.
3 The Control Unit (CU) sends signals to other components
on the control bus.
4 The Memory Data Register (MDR) holds data to be
stored in the memory address in the MAR. // The
Memory Data Register (MDR) holds data read from the
memory address in the MAR
1(b) 1 mark for name, 1 mark for corresponding role 2
e.g.
• Current Instruction Register // CIR
• To store the instruction to be decoded / executed next
• Status register // SR
• To contain bits that can be referenced individually to indicate a state or
event
• Interrupt register
• To store details of any interrupts that have occurred
1(c) 1 mark each to max 4 4
• At the start / end of FE cycle the interrupt register is checked
• The priority of any interrupts waiting is checked
• if the priority of the interrupt is higher than the current process
• the contents of the registers are stored on the stack
• The relevant Interrupt Service Routine (ISR) / interrupt handler is called to
process the interrupt
• When the ISR has finished, a further check is made for higher priority
interrupts
• if no more interrupts of higher priority, the register contents are restored
and the next FE cycle continues
(a) Convert the denary integer 558 into 12-bit binary and hexadecimal.
Binary ……
Hexadecimal ……
[2]
(b) (i) Convert the two’s complement binary integer 11100010 into denary.
…… [1]
(ii) Write the smallest and the largest two’s complement binary integers that can be represented in 8 bits.
Smallest ……
Largest ……
[2]
(c) Give one application where Binary Coded Decimal (BCD) is used and justify its use.
Application ……
Justification ……
[2]
Mark scheme
2(a) 1 mark for: 2
0010 0010 1110
1 mark for:
22E
2(b)(i) 1 mark for: 1
-30
2(b)(ii) 1 mark for smallest, 1 mark for largest 2
Smallest: 1000 0000
Largest: 0111 1111
2(c) 1 mark for application and 1 mark for corresponding justification 2
e.g.
• an application that performs financial / banking calculations
• because financial transactions use only two decimal places and must be
accurate, no accumulating / rounding errors and it is difficult to represent
decimal values exactly in normal binary.
Or
• electronic displays
• because visual displays only need to show individual digits
• because conversion between denary and BCD is straightforward
Or
• The storage of the date and time in the BIOS of a PC
• because conversion between denary and BCD is more straightforward
Or
• Barcode systems
• because conversion between denary and BCD can be accurately
completed
A computer program uses a digital camera to read the words on an item.
The program can read the words that are written on the item, translate the words to a chosen language and then output the words as audio. For example, when used in a supermarket, the program can output the words written on the labels on products.
The program uses Artificial Intelligence (AI).
(a) Explain how AI is used in the computer program described.
…… [4]
(b) State two social benefits of the use of AI in the computer program described.
1 ……
2 ……
[2]
(c) The computer program is released under a commercial software licence.
(i) Describe the features of a commercial software licence.
…… [3]
(ii) Explain the reasons why an open source software licence might not be appropriate for the computer program described.
…… [3]
Mark scheme
3(a) 1 mark each to max 4 4
e.g.
• Uses image recognition // optical character recognition
• to analyse a photograph/pixels to identify the location of characters within
an image
• in order to convert the pattern of pixels into individual characters
• Uses natural language
• to combine the characters into words
• and compare the words to database to identify a match in the language of
the writing
• it may also predict what is missing / incomplete / from what has been
read
• then compare the words to a database of the user’s chosen language to
find a match and translate
• Uses text-to-speech
• to generate the audio waveforms corresponding to the words
3(b) 1 mark each to max 2 2
e.g.
• It can help people with visual impairment to identify which products to
purchase
• It can help people who cannot understand the language
• It can help to overcome learning / reading difficulties
3(c)(i) 1 mark each to max 3 3
• The program is usually sold for a fee
• Users have no access to source code
• It protects the intellectual rights of the programmer / developer
• Users cannot legally alter or share the program
• There are limitations on the use of the software e.g. number of times it
can be installed
• Support and maintenance is usually provided e.g. updates, bug fixes etc.
3(c)(ii) 1 mark each to max 3 3
e.g.
• The source code would be accessible therefore it could be changed
• which might lead to the program outputting an incorrect response
• so people could purchase the wrong item
• which might have serious consequences // by example e.g. allergies
(a) Write the logic expressions for the following logic circuit.
R
S X
T
Y
U
X = ……
Y = ……
[2]
(b) Complete the truth table for the logic expression:
X = NOT (A AND (B XOR C))
A B C Working space X
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
[2]
Mark scheme
4(a) 1 mark each: 2
• X = (R NOR S) XOR T
• Y = (T AND U) OR U
4(b) 1 mark for first four rows, 1 mark for second four rows 2
A B C Working space X
0 0 0 1
0 0 1 1
0 1 0 1
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 0
1 1 1 1
An online game has a database that stores data about users and the characters each user creates in the game. Each user can create multiple characters and purchase multiple items for each character.
The normalised database has the following design:
USER(Username, Password, DateOfBirth)
CHARACTER(CharacterName, CharacterID, Username, Level, Money)
ITEM(ItemName, MinimumLevel, Cost)
CHARACTER_ITEM(CharacterID, ItemName)
(a) Explain the purpose of the table CHARACTER_ITEM in the database.
…… [2]
(b) Underline the attribute, or attributes, that form the primary key in each of the tables.
USER(Username, Password, DateOfBirth)
CHARACTER(CharacterName, CharacterID, Username, Level, Money)
ITEM(ItemName, MinimumLevel, Cost)
CHARACTER_ITEM(CharacterID, ItemName)
[2]
(c) A Database Management System (DBMS) provides data security.
(i) Identify two methods the DBMS can use to protect the data in the table USER from unauthorised access.
Explain how each method protects the data.
Method 1 ……
Explanation ……
Method 2 ……
Explanation ……
[4]
(ii) The DBMS also supports data integrity.
Give two ways that a DBMS can support data integrity.
1 ……
2 ……
[2]
(d) (i) Write a Structured Query Language (SQL) script to count the number of items purchased by the user with the username "KAT123".
…… [3]
(ii) The following changes need to be made to the character with the ID "0002":
• level changed to 3
• money changed to 10000.00
Write an SQL script to change the character’s data.
…… [3]
Mark scheme
5(a) 1 mark each to max 2 2
• To remove the many-to-many relationship
• between CHARACTER and ITEM tables
• To allow each character to have many items // to allow each item to be
purchased for many characters
• by creating a linking table
• between the characters and the items purchased for each one
5(b) 1 mark for the three single Primary Keys 2
1 mark for the composite key
USER(Username, Password, DateOfBirth)
CHARACTER(CharacterName, CharacterID, Username, Level, Money)
ITEM(ItemName, MinimumLevel, Cost)
CHARACTER_ITEM(CharacterID, ItemName)
5(c)(i) 1 mark for method 1 mark for matching explanation 4
e.g.
• Access rights
• appropriate permissions for the table USER are needed to read or edit
the data
• A password for the database or the USER table
• prevents users without the password from accessing the data
• Encrypting the database
• stops users without the decryption key from decoding / understanding the
data
• Views
• users can be given a view to the database that does not include the data
in the table USER
5(c)(ii) 1 mark each to max 2 2
e.g.
• Validation
• Enforce referential integrity
• Cascade update / delete
• Ensuring the database is normalised
5(d)(i) 1 mark for each point 3
• Select COUNT
• FROM (using correct tables) and joining
• WHERE (or AND) condition for correct username
Example 1:
SELECT COUNT(ItemName)
FROM CHARACTER_ITEM INNER JOIN CHARACTER
ON CHARACTER.CharacterID = CHARACTER_ITEM.CharacterID
WHERE CHARACTER.Username = "KAT123";
Example 2:
SELECT COUNT(ItemName)
FROM CHARACTER_ITEM, CHARACTER
WHERE CHARACTER.CharacterID = CHARACTER_ITEM.CharacterID
AND CHARACTER.Username = "KAT123";
5(d)(ii) 1 mark for each point 3
• UPDATE character
• SET level and money
• WHERE condition
e.g.
UPDATE CHARACTER
SET Level = 3, Money = 10000.00
WHERE CharacterID = "0002";
A company has multiple sites in different cities.
The company has drivers who deliver products to customers. Each driver can connect to the company’s WAN (Wide Area Network) whilst out of the office using a smartphone.
(a) State two ways that a WAN is different to a LAN (Local Area Network).
1 ……
2 ……
[2]
(b) The smartphones use the cell phone network to connect to the WAN.
Explain how data is transmitted using the cell phone network.
…… [4]
(c) Devices that connect to the WAN have an IP address.
Complete the following description of IP addresses by writing the missing words.
IPv4 is displayed as four groups of 8-bit numbers separated by …… .
Each IPv4 address is 32 bits.
IPv6 is made of eight groups of 4 …… numbers separated by colons.
Multiple consecutive groups of …… can be replaced with a double colon.
Each IPv6 address is …… bits.
A …… IP address can change each time the computer connects to a network.
A …… IP address can only be accessed by other devices in the same
LAN and is assigned by the router within the LAN.
[6]
(d) The main office for the company has four wired computers, one server, two printers, one central switch and a device providing a single point of access for the internet. The network is set up as a star topology.
Draw the topology for the main office network. Label all devices.
[4]
(e) Describe the role of a switch in a network.
…… [3]
Mark scheme
6(a) 1 mark each to max 2 2
• In a WAN devices can connect over a larger geographical area in a LAN
devices connect over a smaller geographical area
• A WAN may use non-dedicated hardware the hardware in a LAN is
usually dedicated
• A WAN uses external / not company owned transmission media // the
transmission media for a LAN is usually company owned
6(b) 1 mark each to max 4 4
e.g.
• Land is split into cells designed for maximum line of sight
• Each cell has a tower with an antenna which receives and transmits data
• Data is transmitted between the tower and the phone
• Data transmission is wireless using low power radio signals/frequencies
• Multiple devices can communicate simultaneously with the same tower
6(c) 1 mark for each correct word 6
• full stops
• hexadecimal
• zeros
• 128
• dynamic
• private
IPv4 is made of four groups of 8-bit numbers separated by full stops. Each
IPv4 address is 32 bits.
IPv6 is made of eight groups of 4 hexadecimal numbers separated by colons.
Multiple consecutive groups of zeros can be replaced with a double colon.
Each IPv6 address is 128 bits.
A dynamic IP address can change each time the computer connects to a
network.
A private IP address can only be accessed by other devices in the same LAN
and is assigned by the router within the LAN.
6(d) 1 mark each 4
• Server directly connected to the switch
• Four labelled computers all connected directly to the switch
• Two printers each directly connected to the switch / server / a computer
• Router / modem directly connected to the switch / server for internet
access
e.g. Example only
6(e) 1 mark each to max 3 3
e.g.
• To store the MAC addresses of devices connected to it
• To receive packets from devices
• To forward packets directly to the intended recipient
• To provide a central point of connection for the network
• to enable connected devices to communicate
(a) The following table shows part of the instruction set for a processor. The processor has one register: the Accumulator (ACC).
Instruction
Explanation
Opcode Operand
Direct addressing. Load the contents of the location at the given
LDD <address> address to ACC
LDM #n Immediate addressing. Load the number n to ACC
STO <address> Store the contents of ACC at the given address
ADD #n/Bn/&n Add the number n to the ACC
ADD <address> Add the contents of the given address to the ACC
INC <register> Add 1 to the contents of the register (ACC)
CMP <address> Compare the contents of ACC with the contents of <address>
CMP #n Compare the contents of ACC with number n
Following a compare instruction, jump to <address> if the compare
JPE <address> was True
JMP <address> Jump to the given address
END Return control to the operating system
ACC denotes Accumulator
<address> can be an absolute or a symbolic address
# denotes a denary number, e.g. #123
B denotes a binary number, e.g. B01001010
& denotes a hexadecimal number, e.g. &4A
The current contents of memory are:
Address Instruction
10 12
11
11
12 10
13 22
14 22
100 LDD 10
101 ADD 12
102 STO 11
103 CMP 14
104 JPE 107
105 INC ACC
106 JMP 101
107 STO 10
108 END
(i) Trace the program currently in memory using the following trace table.
Memory address
Instruction address ACC
10 11 12 13 14
12 11 10 22 22
[3]
(ii) State the effect of changing instruction LDD 10 in address 100 to LDM #10
…… [1]
(iii) Identify and describe one mode of addressing not given in the table of instructions in part (a).
Mode of addressing ……
Description ……
[2]
(b) The table shows part of the instruction set for a processor. The processor has one register: the Accumulator (ACC).
Instruction Explanation
Opcode Operand
AND #n/Bn/&n Bitwise AND operation of the contents of ACC with the operand
AND <address> Bitwise AND operation of the contents of ACC with the contents of
<address>
XOR #n/Bn/&n Bitwise XOR operation of the contents of ACC with the operand
XOR <address> Bitwise XOR operation of the contents of ACC with the contents of
<address>
OR #n/Bn/&n Bitwise OR operation of the contents of ACC with the operand
OR <address> Bitwise OR operation of the contents of ACC with the contents of
<address>
<address> can be an absolute or symbolic address
# denotes a denary number, e.g. #123
B denotes a binary number, e.g. B01001010
& denotes a hexadecimal number, e.g. &4A
(i) The ACC currently contains the following binary value.
1 1 1 1 0 0 0 0
Write the result after the instruction OR B00001111 is run.
[1]
(ii) The ACC currently contains the following binary value.
0 0 0 1 1 1 0 1
Write the result after the instruction XOR #30 is run.
[1]
Mark scheme
7(a)(i) 1 mark for each shaded section 3
Instruction Memory address
address ACC
10 11 12 13 14
12 11 10 22 22
100 12
101 22
102 22
103
104
107 22
7(a)(ii) 1 mark from: 1
• The number 10 will be loaded into the ACC instead of 12 / contents of
address 10
• The addition will give 20 not 22 so the comparison will fail and result in an
infinite loop
7(a)(iii) 1 mark for name of mode, 1 mark for matching description 2
e.g.
• Indirect
• The operand points to the memory location that contains the address of
the data
• Indexed
• The address of the data is formed by adding the contents of the Index
Register (IX) to the operand
• Relative
• The address is calculated using its distance from a base address
7(b)(i) 1 mark for: 1
1111 1111
7(b)(ii) 1 mark for:
0000 0011
Checked your answers against these? Let AI mark the whole paper, on your own working.
Examiners follow the generic marking principles at the front of the scheme, then each question's points: method (M), accuracy (A) and independent (B) marks, error carried forward where the scheme allows it, and positive marking, so you're credited for what you got right.
Check your answers against it
Done this paper? Upload your script and CIE Buddy's AI marker marks it question by question against this exact scheme, puts the ticks on your own working and says what each lost mark needed.
Where can I find the 9618/12 May/June 2025 mark scheme?+
On this page, free: the mark scheme for AS & A Level Computer Science 9618/12, May/June 2025 (9618_s25_ms_12), and the question paper (9618_s25_qp_12), to read or download, with each question's marking points written out underneath.
How many marks is 9618/12 out of?+
Computer Science 9618/12 for May/June 2025 is out of 75 marks, with 1 hour 30 minutes to answer it.
Can I get my 9618/12 answers marked?+
Yes. Upload your answers to 9618/12/M/J/25 as a PDF or photos, and CIE Buddy marks every question against this paper's official mark scheme, using Cambridge's marking rules. You get your score, each lost mark explained on your own script, and the topics to revise. It's a guide, not an official Cambridge grade.