Cambridge A Level Computer Science 9608 — 2017 Oct/Nov Paper 1 · Variant 3

9608/13/O/N/17 · 75 marks · ≈84 min

The question paper and its mark scheme, free to read here and free to download. This is Cambridge’s own paper, exactly as it was sat.

← All Computer Science papersWhat was in this paper?

Question paper16 pages

Cambridge A Level Computer Science 9608 2017 Oct/Nov Paper 1 · Variant 3 question paper, page 1 of 16
Page 1 of 16
Cambridge A Level Computer Science 9608 2017 Oct/Nov Paper 1 · Variant 3 question paper, page 2 of 16
Page 2 of 16
Cambridge A Level Computer Science 9608 2017 Oct/Nov Paper 1 · Variant 3 question paper, page 3 of 16
Page 3 of 16
Cambridge A Level Computer Science 9608 2017 Oct/Nov Paper 1 · Variant 3 question paper, page 4 of 16
Page 4 of 16
Cambridge A Level Computer Science 9608 2017 Oct/Nov Paper 1 · Variant 3 question paper, page 5 of 16
Page 5 of 16
Cambridge A Level Computer Science 9608 2017 Oct/Nov Paper 1 · Variant 3 question paper, page 6 of 16
Page 6 of 16
Cambridge A Level Computer Science 9608 2017 Oct/Nov Paper 1 · Variant 3 question paper, page 7 of 16
Page 7 of 16
Cambridge A Level Computer Science 9608 2017 Oct/Nov Paper 1 · Variant 3 question paper, page 8 of 16
Page 8 of 16
Cambridge A Level Computer Science 9608 2017 Oct/Nov Paper 1 · Variant 3 question paper, page 9 of 16
Page 9 of 16
Cambridge A Level Computer Science 9608 2017 Oct/Nov Paper 1 · Variant 3 question paper, page 10 of 16
Page 10 of 16
Cambridge A Level Computer Science 9608 2017 Oct/Nov Paper 1 · Variant 3 question paper, page 11 of 16
Page 11 of 16
Cambridge A Level Computer Science 9608 2017 Oct/Nov Paper 1 · Variant 3 question paper, page 12 of 16
Page 12 of 16
Cambridge A Level Computer Science 9608 2017 Oct/Nov Paper 1 · Variant 3 question paper, page 13 of 16
Page 13 of 16
Cambridge A Level Computer Science 9608 2017 Oct/Nov Paper 1 · Variant 3 question paper, page 14 of 16
Page 14 of 16
Cambridge A Level Computer Science 9608 2017 Oct/Nov Paper 1 · Variant 3 question paper, page 15 of 16
Page 15 of 16
Cambridge A Level Computer Science 9608 2017 Oct/Nov Paper 1 · Variant 3 question paper, page 16 of 16
Page 16 of 16

Mark scheme7 pages

Answers below. Sit the paper first if you are practising.

Mark scheme, page 1 of 7
Page 1 of 7
Mark scheme, page 2 of 7
Page 2 of 7
Mark scheme, page 3 of 7
Page 3 of 7
Mark scheme, page 4 of 7
Page 4 of 7
Mark scheme, page 5 of 7
Page 5 of 7
Mark scheme, page 6 of 7
Page 6 of 7
Mark scheme, page 7 of 7
Page 7 of 7

Paper as text

Question paper, page 1

This document consists of 16 printed pages. DC (JP) 147948 © UCLES 2017 [Turn over Cambridge International Examinations Cambridge International Advanced Subsidiary and Advanced Level * 3 2 2 0 4 1 3 8 5 2 * COMPUTER SCIENCE 9608/13 Paper 1 Theory Fundamentals October/November 2017 1 hour 30 minutes Candidates answer on the Question Paper. No Additional Materials are required. No calculators allowed. READ THESE INSTRUCTIONS FIRST Write your Centre number, candidate number and name in the spaces at the top of this page. Write in dark blue or black pen. You may use an HB pencil for any diagrams, graphs or rough working. Do not use staples, paper clips, glue or correction fluid. DO NOT WRITE IN ANY BARCODES. Answer all questions. No marks will be awarded for using brand names of software packages or hardware. At the end of the examination, fasten all your work securely together. The number of marks is given in brackets [ ] at the end of each question or part question. The maximum number of marks is 75.

Question paper, page 2

2 9608/13/O/N/17 © UCLES 2017 1 (a) Each of the following bytes represents an integer in two’s complement form. State the denary value. (i) 0111 0111 Denary … [1] (ii) 1000 1000 Denary … [1] (iii) Express the following integer in two’s complement form. -17 [1] (iv) State in denary, the range of integer values that it is possible to represent in two’s complement integers using a single byte. Lowest value … Highest value … [1] (b) (i) Convert the following denary integer into Binary Coded Decimal (BCD). 653 …[1] (ii) A 3-digit BCD representation has been incorrectly copied. It is shown as: 0 1 0 0 1 1 1 0 0 0 1 0 State how you can recognise that this is not a valid BCD representation. … …[1] (iii) Describe a practical application where BCD is used. … …[1]

Question paper, page 3

3 9608/13/O/N/17 © UCLES 2017 [Turn over 2 (a) The diagram shows three items of software that translate program code. Draw one line from each context to the correct item of translation software. Assembler Interpreter Compiler Context Item of translation software A web page contains a client-side script. Each instruction in the source code consists of an op code and an operand. The source code is required at run-time. When the source code is translated, copies of the executable program can be distributed without the need for the source code. [4] (b) The Java programming language is said to be machine or platform independent. (i) Describe what is meant by machine independent. … …[1] (ii) Describe how a Java source code program is translated. … … … …[2]

Question paper, page 4

4 9608/13/O/N/17 © UCLES 2017 3 A Local Area Network is used by staff in a hospital to access data stored in a Database Management System (DBMS). (a) Name two security measures to protect computer systems. 1 … 2 … [2] (b) A frequent task for staff is to key in new patient data from a paper document. The document includes the patient’s personal ID number. (i) The Patient ID is a seven digit number. The database designer decides to use a check digit to verify each foreign key value that a user keys in for a Patient ID. When a user assigns a primary key value to a Patient ID, the DBMS adds a modulus-11 check digit as an eighth digit. The DBMS uses the weightings 6, 5, 4, 3, 2 and 1 for calculating the check digit. It uses 6 as the multiplier for the most significant (leftmost) digit. Show the calculation of the check digit for the Patient ID with the first six digits 786531. Complete Patient ID …[4] (ii) Name and describe two validation checks that the DBMS could carry out on each primary key value that a user keys in for a Patient ID. 1 Validation check … Description … … 2 Validation check … Description … … [4]

Question paper, page 5

5 9608/13/O/N/17 © UCLES 2017 [Turn over 4 (a) The diagram shows the components and buses found inside a typical Personal Computer (PC). General purpose registers A B C Arithmetic Logic Unit (ALU) F E D Some components and buses only have labels A to F to identify them. For each label, choose the appropriate title from the following list. The title for label D is already given. • Control bus • System clock • Data bus • Control unit • Main memory • Secondary storage A … B … C … D Address bus E … F … [5]

Question paper, page 6

6 9608/13/O/N/17 © UCLES 2017 (b) The following table shows part of the instruction set for a processor. The processor has one general purpose register, the Accumulator (ACC), and an Index Register (IX). Instruction Explanation Op code (mnemonic) Operand Op code (binary) LDM #n 1100 0001 Immediate addressing. Load number n to ACC. LDD <address> 1100 0010 Direct addressing. Load the contents of the given address to ACC. LDV #n 1100 0011 Relative addressing. Move to the address n locations from the address of the current instruction. Load the contents of this address to ACC. STO <address> 1100 0100 Store the contents of ACC at the given address. DEC 1100 0101 Decrement the contents of ACC. OUTCH 1100 0111 Output the character corresponding to the ASCII character code in ACC. JNE <address> 1110 0110 Following a compare instruction, jump to <address> if the compare was False. JMP <address> 1110 0011 (Unconditionally) jump to the given address. CMP #n 1110 0100 Compare the contents of ACC with number n.

Question paper, page 7

7 9608/13/O/N/17 © UCLES 2017 [Turn over Complete the trace table for the following assembly language program. Label Instruction StartProg: LDV #CountDown ASCII code table (selected codes only) <Space> 3 B C X 32 51 66 67 88 CMP Num1 JNE CarryOn JMP Finish CarryOn: OUTCH LDD CountDown DEC STO CountDown JMP StartProg Finish: LDM #88 OUTCH END CountDown: 15 32 51 67 Num1: 32 Trace table: ACC CountDown OUTPUT 15 67 C 15 [5]

Question paper, page 8

8 9608/13/O/N/17 © UCLES 2017 (c) The program given in part (b) is to be translated using a two-pass assembler. The program has been copied here for you. The program now starts with a directive which tells the assembler to load the first instruction of the program to address 100. Label ORG #0100 StartProg: LDV #CountDown CMP Num1 JNE CarryOn JMP Finish CarryOn: OUTCH LDD CountDown DEC STO CountDown JMP StartProg Finish: LDM #88 OUTCH END CountDown: 15 32 51 67 Num1: 32

Question paper, page 9

9 9608/13/O/N/17 © UCLES 2017 [Turn over On the first pass of the two-pass process, the assembler adds entries to a symbol table. The following symbol table shows the first eleven entries, part way through the first pass. The circular labels show the order in which the assembler made the entries to the symbol table. Symbol table Symbolic address Absolute address StartProg 1 100 2 CountDown 3 UNKNOWN 4 Num1 5 UNKNOWN 6 CarryOn 7 UNKNOWN 8 104 11 Finish 9 UNKNOWN 10 Explain how the assembler made these entries to the symbol table. … … … … … …[3] (d) The assembler software must then complete the second pass building up the executable file. (i) Name the second table needed when the assembler software carries out the second pass. …[1]

Question paper, page 10

10 9608/13/O/N/17 © UCLES 2017 The following shows two of the program instructions in machine code. Machine code Instruction Binary Hexadecimal OUTCH 1100 0111 C7 JNE CarryOn A B Each of the numbers A and B represents the complete instruction in two bytes, one byte for the op code and one byte for the operand. (ii) Use the following instruction set to write the numbers for A and B. A (binary) … B (hexadecimal) … [3] Instruction Explanation Op code (mnemonic) Operand Op code (binary) LDM #n 1100 0001 Immediate addressing. Load number n to ACC. LDD <address> 1100 0010 Direct addressing. Load the contents of the given address to ACC. LDV #n 1100 0011 Relative addressing. Move to the address n locations from the address of the current instruction. Load the contents of this address to ACC. STO <address> 1100 0100 Store the contents of ACC at the given address. DEC 1100 0101 Decrement the contents of ACC. OUTCH 1100 0111 Output the character corresponding to the ASCII character code in ACC. JNE <address> 1110 0110 Following a compare instruction, jump to <address> if the compare was False. JMP <address> 1110 0011 (Unconditionally) jump to the given address. CMP #n 1110 0100 Compare the contents of ACC with number n.

Question paper, page 11

11 9608/13/O/N/17 © UCLES 2017 [Turn over 5 A Personal Computer (PC) has a number of input and output devices. (a) (i) Name three components of a speaker. 1 … 2 … 3 … [3] (ii) Explain the basic internal operation of a speaker. … … … … … … …[4] (b) (i) The user is considering the purchase of a removable device for secondary storage. Name one suitable device. …[1] (ii) Describe two possible uses for this device on a home Personal Computer (PC). 1 … … 2 … … [2]

Question paper, page 12

12 9608/13/O/N/17 © UCLES 2017 6 Raj has joined a software company as a trainee programmer. He was given the company’s Code of Conduct document during his induction training. The handbook has a section headed ‘Ethical Behaviour’. (a) Describe what is meant by ethics. … … …[2] (b) Raj is assigned to work as a new member of a development team. In his first week, Raj feels uncomfortable working with one of his colleagues. He is unfamiliar with the programming language used by the team. Next week, he will be working on the site of one of the company’s clients with a colleague. Raj is very nervous about working in an unfamiliar workplace. Raj has a review with his manager after his first three weeks. The Code of Conduct document was produced by the Human Resources section. It closely follows the ACM/IEEE Software Engineering Code of Ethics that uses these eight key principles: Public Client and Employer Product Judgement Management Profession Colleagues Self There are issues Raj will want to raise with his manager. • Describe two of these issues. • Circle the key ACM/IEEE principle this comes under. • Suggest what action should be taken to demonstrate ethical behaviour. Issue 1 Description … … … ACM/IEEE principle (Circle one only) Public Client and Employer Product Judgement Management Profession Colleagues Self Possible action … … …

Question paper, page 13

13 9608/13/O/N/17 © UCLES 2017 [Turn over Issue 2 Description … … … ACM/IEEE principle (Circle one only) Public Client and Employer Product Judgement Management Profession Colleagues Self Possible action … … … [6] Question 7 begins on the next page.

Question paper, page 14

14 9608/13/O/N/17 © UCLES 2017 7 A clinic is staffed by several doctors. The clinic serves thousands of patients. Each day and at any one time, there is only one doctor in the clinic available for appointments. The clinic stores patient, doctor and appointment data in a relational database. (a) (i) Underline the primary key for each table in the following suggested table designs. PATIENT(PatientID, PatientName, Address, Gender) DOCTOR(DoctorID, Gender, Qualification) APPOINTMENT(AppointmentDate, AppointmentTime, DoctorID, PatientID) [2] (ii) Complete the following entity-relationship (E-R) diagram for this design. [2] (b) The doctors are concerned that many patients make appointments but do not attend them. Describe the changes to the table designs that could be made to store this information. … …[2]

Question paper, page 15

15 9608/13/O/N/17 © UCLES 2017 [Turn over (c) The doctors are about to set up a new clinic in the neighbouring village, SITE-B. The original location is identified as SITE-A. A new table is designed to store the ID of the doctor who is able to work at each site. DOCTOR-AVAILABILITY(DoctorID, Site) Five entries stored in the table are: DoctorID Site 098 SITE-A 074 SITE-A 117 SITE-B 098 SITE-B 033 SITE-B (i) State what this data shows about the availability of the doctor with the ID of 098. … …[1] (ii) Opening a new clinic in the neighbouring village will not require any additional table for storing appointments. It will need a change to the existing appointment table design. Show the revised APPOINTMENT table. APPOINTMENT( … … ) [1] (d) The doctor with the ID of 117 has recently been allocated a new DoctorID of 017. (i) Write an SQL script to update this doctor’s record in the database. UPDATE … SET … WHERE … [3] (ii) Describe why this update could cause problems with the existing data stored. … … …[2]

Question paper, page 16

16 9608/13/O/N/17 © UCLES 2017 Permission to reproduce items where third-party owned material protected by copyright is included has been sought and cleared where possible. Every reasonable effort has been made by the publisher (UCLES) to trace copyright holders, but if any items requiring clearance have unwittingly been included, the publisher will be pleased to make amends at the earliest possible opportunity. To avoid the issue of disclosure of answer-related information to candidates, all copyright acknowledgements are reproduced online in the Cambridge International Examinations Copyright Acknowledgements Booklet. This is produced for each series of examinations and is freely available to download at www.cie.org.uk after the live examination series. Cambridge International Examinations is part of the Cambridge Assessment Group. Cambridge Assessment is the brand name of University of Cambridge Local Examinations Syndicate (UCLES), which is itself a department of the University of Cambridge. (e) Write an SQL script to display the date and time of all appointments made by the patient with the PatientID of 556. … … …[3]

Mark scheme, page 1

® IGCSE is a registered trademark. This document consists of 7 printed pages. © UCLES 2017 [Turn over Cambridge Assessment International Education Cambridge International Advanced Subsidiary and Advanced Level COMPUTER SCIENCE 9608/13 Paper 1 Written Paper October/November 2017 MARK SCHEME Maximum Mark: 75 Published This mark scheme is published as an aid to teachers and candidates, to indicate the requirements of the examination. It shows the basis on which Examiners were instructed to award marks. It does not indicate the details of the discussions that took place at an Examiners’ meeting before marking began, which would have considered the acceptability of alternative answers. Mark schemes should be read in conjunction with the question paper and the Principal Examiner Report for Teachers. Cambridge International will not enter into discussions about these mark schemes. Cambridge International is publishing the mark schemes for the October/November 2017 series for most Cambridge IGCSE®, Cambridge International A and AS Level components and some Cambridge O Level components.

Mark scheme, page 2

9608/13 Cambridge International AS/A Level – Mark Scheme PUBLISHED October/November 2017 © UCLES 2017 Page 2 of 7 Question Answer Marks 1(a)(i) 119 1 1(a)(ii) –120 1 1(a)(iii) 1 1 1 0 1 1 1 1 1 1(a)(iv) Lowest value: −128 Highest value: +127 1 1(b)(i) 0110 0101 0011 1 1(b)(ii) The second block of four binary digits represents a digit larger than 9 // 14 1 1(b)(iii) A string of digits on any electronic device displaying numeric values 1 Question Answer Marks 2(a) 4 2(b)(i) One mark from: • The program code can be translated to run on any processor / platform • Source code is translated into machine independent intermediate code not machine dependent code 1 Interpreter Assembler A web page contains a client-side script Each instrucon in the source code consists of an op code and an operand When the source code is translated, copies of the executable program can be distributed without the need for the source code Compiler The source code is required at run- me

Mark scheme, page 3

9608/13 Cambridge International AS/A Level – Mark Scheme PUBLISHED October/November 2017 © UCLES 2017 Page 3 of 7 Question Answer Marks 2(b)(ii) Two marks from: • Java uses a two-step translation process • Java code is partially interpreted – partially compiled • Code is translated first into intermediate code / "bytecode"« • «using the Java compiler • The bytecode is finally interpreted by the Java Virtual Machine Max 2 Question Answer Marks 3(a) Two marks from: • Physical measures • Access rights • Encryption • Firewall • Use authentication methods such as usernames and passwords • Anti-malware program Max 2 3(b)(i) Answer: 786531 4 (1 mark for answer) 7 X 6 = 42 8 X 5 = 40 6 X 4 = 24 1 mark for 6 values 5 X 3 = 15 3 X 2 = 6 1 X 1 = 1 Total: 128 / 11 11 R 7 1 mark for 2 steps Accept 128 MOD 11 = 7 Check digit: 11 – 7 = 4 1 mark for subtraction 4 3(b)(ii) One mark for name of check One mark for description Max two checks Uniqueness check Each PatientID must be unique Length check Each PatientID is exactly 7 characters Format check / Type check All 7 characters must be digits Presence check PatientID must be entered Max 4

Mark scheme, page 4

9608/13 Cambridge International AS/A Level – Mark Scheme PUBLISHED October/November 2017 © UCLES 2017 Page 4 of 7 Question Answer Marks 4(a) A – System clock B – Control unit C – Main memory E – Control bus F – Data bus 5 4(b) ACC CountDown OUTPUT 15 67 C 15 14 14 (1) 51 3 (1) + (1) 14 (1) 13 13 32 (1) 88 X 5 4(c) Three marks from: • The assembler scans the assembly language instructions in sequence • When it meets a symbolic address checks to see if already in symbol table • If not, it adds it to the symbol table in the symbolic address column • If it is already in symbol table check if absolute address known • If the absolute address is known, it is entered in the appropriate cell • If the absolute address is not known mark / leave as unknown Max 3 4(d)(i) The op code / mnemonic / instruction table 1 4(d)(ii) A – 1110 0110 0110 1000 (1) (1) B – E6 68 (1) 3

Mark scheme, page 5

9608/13 Cambridge International AS/A Level – Mark Scheme PUBLISHED October/November 2017 © UCLES 2017 Page 5 of 7 Question Answer Marks 5(a)(i) Three marks from: • Diaphragm / cone • (Voice) coil of wire • Spider / Suspension • (Permanent) Magnet • Basket • Dust cap • Outer frame 3 5(a)(ii) Four marks from: • Takes an electrical signal and translates it into physical vibrations to create sound waves • An electric current in the coil creates an electro-magnetic field • Changes in the audio signal causes the direction of the electric current to change • The direction of the current determines the polarity of the electro-magnet // changing the direction of the current changes the direction of the polarity of the electro-magnet • The electro-magnet is repelled by or attracted to the permanent magnet • Causing the coil to vibrate • The movement of the coil causes the cone / diaphragm to vibrate • That vibration is transmitted to the air in front of the cone / diaphragm as sound waves • The amount of movement will determine the frequency and amplitude of the sound wave produced Max 4 5(b)(i) One mark from: • External hard disk drive // SSD • External CD / DVD drive • Pen drive • Blu-ray drive 1 5(b)(ii) Two marks from: • Additional secondary file storage // storing files • Backup of files • Archiving of files • Transfer files to second computer Max 2

Mark scheme, page 6

9608/13 Cambridge International AS/A Level – Mark Scheme PUBLISHED October/November 2017 © UCLES 2017 Page 6 of 7 Question Answer Marks 6(a) Two marks from: • A system of moral principles • That guide behaviour / decision making • Based on philosophical / religious views • By example, e.g. respectful and considerate behaviour Max 2 6(b) One mark for identifying the issue One mark for correct principle One mark for possible action Max 2 issues (2 × 3 marks) 1 Uncomfortable with one of his colleagues Client and Employer // Management / Colleagues // Judgement // Self For example: Team building exercises // arranged meeting 2 Unfamiliar with programming language Self // Client and Employer //Product // Profession // Colleagues For example: Undergo training 3 Visit to unfamiliar workplace Client and employer // Management // Judgement // Profession // Colleagues For example: He should speak to his manager to discuss situation Max 6 Question Answer Marks 7(a)(i) PatientID (1) DoctorID AppointmentDate, AppointmentTime (1) 2 7(a)(ii) One PATIENT attends many APPOINTMENTs One DOCTOR takes many APPOINTMENTs Special case for 1 mark only (only if no one to many relationships shown) Many PATIENTs are seen by many DOCTORs 2

Mark scheme, page 7

9608/13 Cambridge International AS/A Level – Mark Scheme PUBLISHED October/November 2017 © UCLES 2017 Page 7 of 7 Question Answer Marks 7(b) Two marks from: Either: • Add an attribute (for example Attended ) • To the appointment table // APPOINTMENT Or: • Add an attribute (for example AppointmentsMissed ) • To the patient table // PATIENT 2 7(c)(i) Available to work at both SITE-A and SITE-B 1 7(c)(ii) APPOINTMENT(Site, AppointmentDate, AppointmentTime, DoctorID, PatientID) 1 7(d)(i) One mark per line UPDATE DOCTOR SET DoctorID = '017' WHERE DoctorID = '117'; 3 7(d)(ii) 1 Mark per bullet, max 2 • Referential integrity should be maintained // Referential integrity could be violated. • Data becomes inconsistent • There may be records in the APPOINTMENT table showing doctor ID 117 • The APPOINTMENT table might not be automatically updated • Records in the APPOINTMENT table will become orphaned Max 2 7(e) One mark per line SELECT AppointmentDate, AppointmentTime FROM APPOINTMENT WHERE PatientID = '556'; 3

What you needed in this session

Cambridge’s own grade thresholds for 2017 Oct/Nov, Paper 1 · Variant 3. A higher threshold means an easier paper — the bar moves with how the cohort did.

A45/75
B39/75
C34/75
D29/75
E24/75