Computer Science 9618/33 May/June 2024: question paper and mark scheme
Cambridge AS & A Level Computer Science (9618), Paper 3 Advanced Theory, May/June 2024. Read both free below, or download them. Done the paper? Get it marked by AI against this mark scheme.
Real numbers are stored in a computer system using floating-point representation with:
• 10 bits for the mantissa
• 6 bits for the exponent
• two’s complement form for both the mantissa and the exponent.
(a) Calculate the denary value of the given normalised floating-point number.
Show your working.
Mantissa Exponent
0 1 0 0 1 1 1 1 0 0 0 0 1 0 0 1
Working ……
Answer ……
[3]
(b) Calculate the normalised floating-point representation of –102.75 in this system.
Show your working.
Mantissa Exponent
[3]
Mark scheme
1(a) One mark per mark point (Max 3) 3
MP1 conversion of exponent 001001 to 9
MP2 application of exponent to mantissa to go from 0.100111100 to 100111100 // 256 + 32 + 16 + 8 + 4 seen // 64/128
+ 8/128 + 4/128 + 2/128 + 1/128 = 79/128 // 1/2 + 1/16 + 1/32 + 1/64 + 1/128 = 79/128
MP3 correct answer = 316
1(b) One mark per mark point (Max 3) 3
MP1 number converted to binary 10011001.01 // number converted to positive 102.75, reversed bits and 1 added.
(0)1100110.11 10011001.00 10011001.01 // -128 + 16 + 8 + 1 + 0.25 = –102.75
MP2 exponent = 7 // Moving binary point the correct number of places
MP3 correct answer
Mantissa Exponent
1 0 0 1 1 0 0 1 0 1 0 0 0 1 1 1
The TCP / IP protocol suite has four layers:
Transport, Application, Link, Internet
(a) Complete the diagram to show the correct order for these layers.
[2]
(b) Describe the function of the Transport layer.
…… [2]
(c) Outline one protocol that is associated with the Application layer.
…… [2]
Mark scheme
2(a) Two marks for all protocols in correct position 2
One mark for at least two protocols in correct position
Application
Transport
Internet
Link
2(b) One mark per mark point (Max 2) 2
MP1 The transport layer is responsible for delivery of data from the source host to the destination host
MP2 It is where data is broken up into packets and sent to the internet layer
MP3 Adds the sequence number to the packet header
MP4 It establishes end to end contact
MP5 It ensures data arrives error free // It retransmits packets if lost.
2(c) One mark for name of protocol and one mark for expansion (Max 2) 2
HTTP(S) – responsible for correct transfer of files / hypertext documents that make up web pages on the world wide web
FTP – used when transferring files from a server to a client on a network
POP3 – handles the receiving of emails
IMAP – handles the receiving of emails
SMTP – handles the sending of emails
BitTorrent – provides peer-to-peer file sharing
(a) Explain what is meant by non-composite and composite data types.
…… [3]
(b) Write pseudocode statements to declare the record data type FootballClub to hold data about football clubs in a league, to include:
• name of team
• date team joined the league
• main telephone number
• name of the manager
• number of members
• current position in the league.
…… [4]
Mark scheme
3(a) One mark per mark point (Max 2) 3
non-composite data types
MP1 Non-composite data types can both be user-defined or primitive
MP2 Non-composite data types do not refer to other data types in their definition / contain one data type in their
definition
MP3 Non-composite data types can be primitive/enumerated/pointer
One mark per mark point (Max 2)
composite data types
MP4 Composite data types can be user-defined or primitive
MP5 Composite data types refer to other data types in their definition/contain more than one data type in their
definition
MP6 Composite data types can be record/set/class
3(b) One mark for TYPE FootballClub and ENDTYPE correct 4
One mark for every two correct declarations
Example answer
TYPE FootballClub
DECLARE TeamName : STRING
DECLARE DateOfJoining : DATE
DECLARE MainTelephone : STRING
DECLARE ManagerName : STRING
DECLARE NumberOfMembers : INTEGER
DECLARE LeaguePosition : INTEGER
ENDTYPE
(a) Describe the sequential method of file access.
…… [2]
(b) Explain how the sequential method of file access is applied to files with serial organisation and to files with sequential organisation.
…… [3]
Mark scheme
4(a) One mark per mark point (Max 2) 2
MP1 Sequential access method searches for records one after the other
MP2 … from the physical start of the file until the record is found/the end of file.
4(b) One mark per mark point (Max 3) 3
MP1 For serial files, records are stored in chronological order
MP2 … every record needs to be checked until the record is found, or all records have been checked.
MP3 For sequential files, records are stored in order of a key field/index, and it is the key field/index that is compared.
MP4 … every record is checked until the record is found, or the key field of the current record is greater than the key
field of the target record.
(a) Write this Reverse Polish Notation (RPN) in infix form:
5 2 + 9 3 - / 3 *
…… [3]
(b) Write this infix expression in RPN:
((7 + 3) - (2 * 8)) / 6
…… [2]
(c) Evaluate this RPN expression:
a b - c d + * e /
when
a = 17, b = 5, c = 7, d = 3 and e = 10
Show the changing contents of the stack as the RPN expression is evaluated.
[4]
Mark scheme
5(a) One mark per correct term (Max 3) 3
(5 + 2)
/ (9 – 3)
* 3
Complete correct answer
((5 + 2) / (9 - 3)) * 3
5(b) One mark 7 3 + 2
One mark 2 8 * - 6 /
Complete answer
7 3 + 2 8 * - 6 /
5(c) One mark per ring (Max 4) 4
3
5 7 7 10 10
17 17 12 12 12 12 120 120 12
The diagram shows a logic circuit.
A Q
P R
B Z
S
C
(a) Complete the truth table for the given logic circuit.
Show your working.
Working space
A B C P Q R S Z
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
[3]
(b) Write the Boolean expression that corresponds to the logic circuit as a sum-of-products.
Z = ……
…… [2]
(c) (i) Complete the Karnaugh map (K-map) for the Boolean expression:
A.B.C + A.B.C + A.B.C + A.B.C + A.B.C + A.B.C
BC
00 01 11 10
A
0
1
[2]
(ii) Draw loop(s) around appropriate group(s) in the K-map to produce an optimal sum-of-products. [2]
(iii) Write the Boolean expression from your answer to part (c)(ii) as a simplified sum-of-products.
…… [1]
Mark scheme
6(a) One mark for working, all four columns P, Q, R and S 3
One mark for first four rows of column Z
One mark for second four rows of column Z
Working space
A B C P Q R S Z
0 0 0 1 0 0 1 1
0 0 1 1 0 0 1 1
0 1 0 0 0 0 0 0
0 1 1 0 0 0 0 0
1 0 0 1 0 0 0 0
1 0 1 1 0 1 0 1
1 1 0 0 0 0 1 1
1 1 1 0 1 0 1 1
6(b) Two marks for all five correct terms and no extras 2
One mark for any three correct terms
(Z =) A.B.C + A.B.C + A.B.C + A.B.C + A.B.C
6(c)(i) Two marks if all correct 2
One mark if one error present
BC
A 00 01 11 10
0 1 1 0 0
1 1 1 1 1
6(c)(ii) One mark for each correct loop (Max 2) 2
BC
A 00 01 11 10
0 1 1 0 0
1 1 1 1 1
6(c)(iii) A+B 1
(a) Describe what is meant by a digital certificate.
…… [3]
(b) Explain the role of a digital certificate in creating a digital signature.
…… [2]
Mark scheme
7(a) One mark per point (max 3) 3
MP1 A digital certificate is an electronic/online document.
MP2 used to authenticate/prove the identity of a website/the online identity of an individual/organisation
MP3 typically issued by a CA
MP4 For example: it contains information identifying a website owner/individual and a public key
7(b) One mark per point (max 2) 2
MP1 The digital certificate provides the public key
MP2 … that can be used to validate the private key associated with the organisation/website/digital signature
A declarative programming language is used to represent the features that are available and the features that are unavailable on different body styles of a car.
01 feature(sunroof).
02 feature(automatic_tailgate).
03 feature(heated_seats).
04 feature(extra_seats).
05 feature(reversing_camera).
06 feature(dashboard_camera).
07 feature(air_conditioning).
08 feature(heated_windscreen).
09 feature(satnav).
10 bodystyle(saloon).
11 bodystyle(hatchback).
12 bodystyle(estate).
13 bodystyle(minivan).
14 bodystyle(convertible).
15 available(sunroof, hatchback).
16 available(sunroof, minivan).
17 available(reversing_camera, hatchback).
18 available(extra_seats, minivan).
19 available(reversing_camera, saloon).
20 unavailable(sunroof, convertible).
21 unavailable(automatic_tailgate, saloon).
22 unavailable(extra_seats, hatchback).
These clauses have the meanings:
Clause Meaning
01 Sunroof is a feature.
10 Saloon is a body style.
15 Sunroof is available on a hatchback.
20 Sunroof is unavailable on a convertible.
(a) Sliding doors is a feature that is available on a minivan but unavailable on a hatchback.
Write additional clauses to represent this information.
23 ……
24 ……
25 ……
[3]
(b) Using the variable Options, the goal:
available(Options, saloon)
returns
Options = reversing_camera
Write the result returned by the goal:
available(Options, hatchback)
Options = …… [1]
(c) F may be available for B if F is a feature and B is a body style and F is not unavailable for that body style.
Write this as a rule:
may_choose_option(F, B)
IF ……
…… [4]
Mark scheme
8(a) One mark for each correctly completed clause (Max 3) 3
(23) feature(sliding_doors).
(24) available(sliding_doors, minivan).
(25) unavailable(sliding_doors, hatchback).
8(b) (Options =) sunroof, reversing_camera 1
8(c) One mark per mark point (Max 4) 4
MP1 feature(F)
MP2 bodystyle(B)
MP3 unavailable(F, B)
MP4 all correct Boolean operators and punctuation (allow , for AND) and no additional lines of code
Example answers
may_choose_option(F, B)
IF
feature(F) AND bodystyle(B) AND NOT unavailable(F, B).
feature(F), bodystyle(B), NOT unavailable(F, B).
Explain what is meant by Deep Learning in relation to Artificial Intelligence (AI).
…… [3]
Mark scheme
9 One mark per mark point (Max 3) 3
MP1 Deep learning learns by finding hidden patterns that are undetectable to humans.
MP2 It structures algorithms in layers: input layer, hidden layers and output layer.
MP3 … to create an artificial neural network to learn and make intelligent decisions on its own.
MP4 It is trained using large quantities of unlabelled data.
MP5 Deep learning requires/uses a large number of hidden layers.
MP6 … the larger the number of layers, the higher the level of success.
(a) State a condition that must be true for an array to be searchable for a binary search.
…… [1]
(b) Complete the given pseudocode to find an item in a 1D array Names of type STRING using a binary search.
DECLARE Names : ARRAY[1:100000] OF STRING
DECLARE TopOfList : INTEGER
DECLARE EndOfList : INTEGER
DECLARE CurrentItem : INTEGER
DECLARE ToFind : STRING
DECLARE Found : BOOLEAN
DECLARE NotInList : BOOLEAN
TopOfList 1 ←
EndOfList 100000 ←
OUTPUT "Which name do you wish to find? "
INPUT ToFind
NotInList ← FALSE
WHILE …… AND ……
CurrentItem ←
(TopOfList + EndOfList) DIV 2
IF …… THEN
Found ← TRUE
ELSE
IF TopOfList >= EndOfList THEN
ELSE
IF ToFind > Names[CurrentItem] THEN
ELSE
EndOfList ←
CurrentItem – 1
ENDIF
ENDIF
ENDIF
ENDWHILE
IF Found = TRUE THEN
OUTPUT "Item found at position ", CurrentItem, " in array"
ELSE
OUTPUT "Item not in array"
ENDIF
[5]
(c) Describe the performance of a binary search in relation to the number of data items in the array being searched. Refer to Big O notation in your answer.
…… [2]
Mark scheme
10(a) One mark 1
The elements are sorted according to the compare function / in ascending / descending order.
10(b) One mark for each correctly completed line (Max 5) 5
DECLARE Names : ARRAY[1:100000] OF STRING
DECLARE TopOfList : INTEGER
DECLARE EndOfList : INTEGER
DECLARE CurrentItem : INTEGER
DECLARE ToFind : STRING
DECLARE Found : BOOLEAN
DECLARE NotInList : BOOLEAN
TopOfList ← 1
EndOfList ← 100000
OUTPUT "Which name do you wish to find? "
INPUT ToFind
Found ← FALSE
NotInList ← FALSE
WHILE Found = FALSE AND NotInList = FALSE
CurrentItem ← (TopOfList + EndOfList) DIV 2
IF ToFind = Names[CurrentItem]// Names[CurrentItem] = ToFind THEN
Found ← TRUE
ELSE
IF TopOfList >= EndOfList THEN
NotInList ← TRUE
ELSE
IF ToFind > Names[CurrentItem] THEN
TopOfList ← CurrentItem + 1
ELSE
EndOfList ← CurrentItem – 1
ENDIF
ENDIF
ENDIF
ENDWHILE
10(b) IF Found = TRUE THEN
OUTPUT "Item found at position ", CurrentItem, " in array"
ELSE
OUTPUT "Item not in array"
ENDIF
10(c) One mark from 2
MP1 Big O for a binary search is O(Log2 n).
MP2 Big O notation is used to indicate the time/space complexity of an algorithm.
One mark from
MP3 The time taken to complete the search increases logarithmically as the number of search items increases linearly
MP4 The time taken to complete the search increases linearly as the number of search items increases exponentially
MP5 As the search field is repeatedly getting smaller, the number of comparisons made before the item is found, or the
number of items runs out, is relatively small.
Reduced Instruction Set Computers (RISC) and Complex Instruction Set Computers (CISC) are two types of processor.
(a) State two features of RISC processors.
…… [2]
(b) Outline the process of interrupt handling as it could be applied to RISC or CISC processors.
…… [3]
(c) Explain how pipelining affects interrupt handling for RISC processors.
…… [3]
Mark scheme
11(a) One mark per mark point (Max 2) 2
MP1 Uses hard-wired code/control units
MP2 Uses relatively few instructions / simple instructions
MP3 Uses relatively few addressing modes
MP4 Makes use of a single-cycle for each instruction
MP5 Makes use of fixed length / fixed format instructions
MP6 Makes use of general-purpose registers
MP7 Pipelining is straightforward to apply
MP8 The design emphasis is on the software
MP9 Processor chips require few transistors.
11(b) One mark per mark point (Max 3) 3
MP1 Once the processor detects an interrupt at the start/end of the fetch-execute cycle
MP2 … the current program is temporarily stopped and the status of each register stored on the stack.
MP3 After the interrupt has been serviced/the Interrupt Service Routine (ISR) has been executed …
MP4 … the registers can be restored to its original status before the interrupt was detected // … the data can be
restored from the stack.
11(c) One mark per mark point (Max 3) 3
MP1 Pipelining adds an additional complexity // there could be a number of instructions still in the pipeline when the
interrupt is received
MP2 All the instructions currently in operation are usually discarded except for the last one/the one at write back
MP3 … the interrupt handler routine is applied to the remaining instruction.
MP4 Once the interrupt has been serviced the processor can restart with the next instruction in the sequence.
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/33 May/June 2024 mark scheme?+
On this page, free: the mark scheme for AS & A Level Computer Science 9618/33, May/June 2024 (9618_s24_ms_33), and the question paper (9618_s24_qp_33), to read or download, with each question's marking points written out underneath.
How many marks is 9618/33 out of?+
Computer Science 9618/33 for May/June 2024 is out of 75 marks, with 1 hour 30 minutes to answer it.
Can I get my 9618/33 answers marked?+
Yes. Upload your answers to 9618/33/M/J/24 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.