Download as pdf or txt
Download as pdf or txt
You are on page 1of 16

ZNOTES.

ORG

UPDATED TO 2021-23 SYLLABUS

CAIE AS LEVEL
COMPUTER
SCIENCE (9618)
SUMMARIZED NOTES ON THE SYLLABUS
CAIE AS LEVEL COMPUTER SCIENCE (9618)

A bitmapped image is encoded by assigning a solid color


to each
pixel.
Information Representation Pixels are small blocks of addressable areas and the color
they
have is represented by binary & stored as bits
A bitmapped image also contains a file header which are
Number Representation a few
bytes of binary and represents basic information
about the graphic,
such as image resolution, size and
Denary: normal integer numbers
number of colors.
Binary
Image Resolution: the amount of pixels an image contains
Values stored as a series of ones and zeroes
per
inch or per centimeter.
A single 0 or 1 is called a binary digit or bit.
Screen resolution: the number of pixels per row by the
Any group of 0s & 1s can represent a character
number of
pixels per column, e.g. HD is 720 by 1280 px
128 64 32 16 8 4 2 1
T otal N umber of  P ixels = Width × Height
0 0 0 0 0 0 0 0
Color depth: number of bits used to represent the color
E.g. 65 in binary is 1000001 of a
single pixel
E.g. a 1 bit image can only store 21 pixels which
equals
BCD (Binary Coded Decimal):
to 2. Therefore, a 1 bit image is monochromatic
Each digit in the number is written separately in a
An image with n bits has 2*n* colors per pixel
series of 4
bits
The higher the color depth, the better color quality
E.g. 398 in BCD
The higher the color depth, the larger the file size.
3 = 0011 9 = 1001 8 = 1000
398 = 001110011000
F ile Size = N umber of  P ixels × Colour Depth
Use of BCD: used in business applications (arithmetic)
where
every digit has to be retained in a result Vector graphics: images defined using mathematics &
Hexadecimal Numbers: geometry
i.e. points, lines, curves & shapes/polygon(s)
The base-16 number system (counting in 16) Objects and properties are stored mathematically.
After 9, numbers represented by letters from A to F Drawing list: set of commands used to define a vector
Vectors are scalable and do not pixelate like a bitmap
256 16 1 image
therefore are used by corporations to create logos
0 0 0 as they can be
resized without losing quality
Bitmapped images are used by general computer users
E.g. A5 in Denary =
(16 × 10) + (1 × 5) = 165 as they are not
big in file size and can be manipulated.
E.g. 65 in Hexadecimal = 65 ÷ 16 = 4 Remainder 1
∴ = 41 H Sound
Quick way of translating hexadecimal to binary is by
converting the
hexadecimal to BCD Sound are vibrations that travel through a medium
E.g. A5 in Binary: A = 1010 5 = 0101 A5 = 10100101 Sound waves are continuous in nature, which means
there is infinite
amount of detail for a sound.
Two’s Complement:
Analogue to Digital Converter (ADC): converts analogue
We can represent a negative number in binary by
sound
into digital signals which can be digitally stored
making the most
significant bit (MSB) a sign bit, which
Digital to Analogue Converter (DAC): converts digital
will tell us whether the
number is positive or negative.
signals
into analogue sound that can be output
An analogue sound wave is picked up by a microphone
-128 64 32 16 8 4 2 1
and sent to an
ADC in the form of analogue electrical
MSB 0 0 0 0 0 0 LSB signals. Once the sound wave
is converted into a digital
form it can be stored and manipulated
Converting a negative denary number into binary Two’s Sound in analogue form can be represented by wave
Complement: forms; the height
of these waves can be sampled
Find the binary equivalent of the denary number regularly with the height being
represented by a bit-code
Add an extra bit before the MSB and turn that into 0
Flip all the bits: 0 to 1; 1 to 0
Add 1
Converting Two’s Complement to denary:
Flip all the bits: 0 to 1; 1 to 0
Add 1
Simple conversion from binary to denary (put a –ve)

Image Representation Sampling Rate: number of samples taken per second

WWW.ZNOTES.ORG
CAIE AS LEVEL COMPUTER SCIENCE (9618)

A higher sampling rate means the waveform will be This process is done using algorithms
converted from
analog to digital form more accurately. Multimedia Container Formats:
Sampling Resolution: no. of bits assigned to each sample Contains different types of data
The sampling resolution allows you to set the range of Can be audio or video or both codecs
volumes
storable for each sample This interleaves the different type of data
The quality of a sound produced using a sound sampler The video is compressed into codecs
depends on the
sampling rate and sampling resolution E.g. .avi, .mov, .mp4, .ogg, .rm
Higher sampling rate/resolution means larger file size Lossy Data Compression:
Bit Rate: number of bits required to store 1sec of sound These programs eliminate unnecessary bits of data
Reduces data file size more than lossless
Bit Rate = Sampling Rate × Sampling Resolution Unable to get back original version
Lossless Data Compression:
F ile Size = Bit Rate × Length of  Sound Breaks data into smaller form of transmission
Allows recreation of original
Lossless Compression: type of compression that allows
original
data to be perfectly reconstructed from
compression
Run-length encoding: compression in which
Communication & Internet
sequences with
same data value in many consecutive
values are stored as a
single data value and count
Technologies
E.g. 00001234111111 can be written as (0-4)1234(1-6)
Lossy Compression: type of compression in which file Client/Server Model
accuracy is
low, but file size is smaller than lossless
Perceptual coding: works by reducing certain parts of Type of computing system in which one workstation
a
sound which are less audible to human hearing serves requests of
other systems
Server is generally most powerful computer in network
Video Clients are the individual components which are
connected in a
network.
Frame Rate (FPS): frequency at which frames in a video Clients rely on servers for resources, such as files,
sequence
are displayed devices, and
even processing power
Higher frame rate, better quality video = greater size
Interlaced (e.g. 1080i):
Old Technology (70 years ago)
Each field of a video image displays every other
horizontal line
of a complete image ∴ doubles FPS
Horizontal lines often visible to eye due to distortion
Pros: Refreshes faster, better visual smoothness and
saves
bandwidth
Cons: Becoming outdated and interlaced screen will
not show
fast moving objects clearly
Progressive (e.g. 720p):
Excite every horizontal line simultaneously
Thus frame rate is the same as the number of
individual pictures
in a video sequence
This gives more detail in each frame
Pros: Crisp, detailed frames and is new and popular
Con: Rough frame transition
Inter-frame compression:
Type of video compression and decreases file size
It removes neighboring frames which are similar
Some change in image data is redundant
How redundant the change in image between frames Examples of networks: file, application, printer, proxy
is determines
the amount of compression possible Internet: global system of interconnected networks that
Temporal redundancy: redundancy between frames uses
standard Internet protocol suite (TCP/IP)
This is the correlation between adjacent data points Transmission Control Protocol/Internet Protocol (TCP/IP):
It is based upon abrupt transitions between frames communication language of the Internet;
Spatial redundancy: redundancy within a frame World Wide Web: system of interlinked hypertext
An intercoded frame that is divided into macro blocks documents
accessed via the Internet
Blocks are not directly encoded with raw pixel values HTTP: defines how messages are formatted and
Encoder finds a block similar to the one in last frame transmitted, and
what actions web servers and browsers
This frame is the reference frame should take in response to
various commands.

WWW.ZNOTES.ORG
CAIE AS LEVEL COMPUTER SCIENCE (9618)

Portable transceivers (e.g. mobile phones) are able to


Hardware communicate
with each other and also access the
internet via base stations
Network:

Local Area Network (LAN): not over large geo area


Wide Area Network (WAN): formed by a number of LANs
connected
together; large geo area
The Internet is a WAN therefore as more LANs are set up,
it allows
the Internet to expand and if they are
maintained, they are in turn
supporting the Internet

Routers:

A device that forwards packets of data between networks


using IP
addresses
Can be used to connect multiple network segments
Can route packets of the same protocol over networks
with dissimilar
architecture over most efficient route

Gateways:

A device used to connect networks with different


architecture and
protocols.
Communication Methods
When packets arrive at a gateway, software strips all
networking
information leaving only raw data Benefits Drawbacks
Gateway translates data into new format and sends it on Best
Doesn’t perform well
using
networking protocols of destination system conductor
Copper with small charges.
Flexible
Server: Cable Affected by
Safe - high
electromagnetism
melting
Computer that runs the server program Expensive
point
Servers run to serve requests of clients.
Fiber- Thinner
Clients typically connect to server through the network Needs expensive
Optic Less signal
optical transmitters
Cabling degradation
Communication Systems and receivers.
Lightweight
Wireless Low frequency so
The Public Service Telephone Network (PSTN): Can travel transmits less data at
Radio over large one time.
Refers to all telephone networks in the world waves distances Affected by radio
All networks connected together by switching centers
Not stations with similar
Allows any telephone to communicate with another
expensive. frequency
Internet connection using PSTN is known as dialup
Data is transferred using existing telephone lines Emitting towers
Micro- Wireless
When data is being transmitted, the computer dials the expensive to build
waves Larger
network to
set up a connection Physical obstacles can
bandwidth
interfere
Dedicated Line: Wireless
Satellites Cheap with Easy to interfere
A telecommunications path between two points
long Expensive to set up
Not shared in common among multiple users
distance
Allows you to maintain a continuous, uninterrupted
presence on the
Web
.
Able to host websites as well browse

Cell phone network: IP Addressing


Wireless network spread over land areas called cells
IP address: numerical label assigned to each device (e.g.
Each cell is served by at least one fixed-location
computer) participating in a computer network that uses
transceiver known
as a base-stations
the Internet
Protocol
Each cell uses a different set of frequencies to avoid
The most common form of IP Address is “IPv4” which
interference
requires 32 bits
(4 bytes) to store an address.
When joined together, cells provide radio coverage over a
wide
geographic area.

WWW.ZNOTES.ORG
CAIE AS LEVEL COMPUTER SCIENCE (9618)

web pages to
be scripted; to have different and changing
content depending on
user input, or other variables.
Server-side script: code that runs on server written using
An IP address serves two principal functions: language supported by server e.g. PHP. Used to provide
host or network interface identification interface for
client & to limit client access to databases
location addressing
When communicating, a device can send another a Bit Streaming
message by stating
their IP address and requesting a
message to be sent through the
router. Bit stream: contiguous sequence of bits, representing a
stream
of data, transmitted continuously over a
Public IP Address Private IP Address communications path,
serially (one at a time).
Address provided to Real-time streaming:
Address issued by router to each
home network by An event is captured live
device in home network
ISP The video signal is encoded to streaming media files
Address only unique in the network The encoded feed is then uploaded to a file server
Address is unique
and cannot be accessed through the Streaming servers duplicate the feed and send it to all
throughout Internet
internet clients
requesting it in real time
Allows two On-demand streaming:
computers to Video is stored on a server as streaming media files
identify each other If client requests to watch a specific video, a bit
stream is
set up which transmits the saved video
Uniform Resource Locator (URL): A character string It is important for the client to have a fast-broadband
referring to
the location of an internet resource speed
when bit streaming because the client has to
download the bits
and display it at the same time.
URLs allow us to specify the domain name and exact
location of a
resource on the internet. Broadband speed required depends on type of stream
For example: user requires; if
user requires better quality then higher
speed needed because each
frame larger in size
Users who stream real-time need faster internet speeds
in comparison
to on-demand because there are greater
number of users requesting
same data simultaneously
A URL can ∴ be summarized as:

Hardware
Domain Name: humanly-memorable names for Internet
participants
such as computers and networks. One Input Devices
domain name can be connected to
multiple IP addresses
Domain Name Service (DNS): naming system used for Keyboard: device used to input text into a computer
computers or
resources having internet connection system. When
a key is pressed, an electrical circuit is
completed. Circuit
transmits a binary signal to computer,
using ASCII code which
represent the key pressed.
Trackerball mouse: pointing device consisting of a ball
held by
a socket containing sensors to detect a rotation of
the ball about
two axes.
Laser mouse: pointing device which uses an infrared laser
Client and Server-Side Scripting diode
to illuminate the surface and a light sensor to
detect movement
relative to a surface
Sequence of Events when Viewing a Website: Flatbed scanner: optically scans documents, & converts it
1. User specifies a URL in their client to a
digital image. Composed of a glass pane, bright light
2. Client sends DNS lookup request to convert URL to which
illuminates pane and a moving optical array.
an IP address
and initiates a TCP connection to Sensor: device that detects events or changes in physical
server quantities and provides a corresponding output,
3. Server acknowledges TCP connection, client sends generally as an
electrical or optical signal
HTTP requests
to retrieve content for the URL.
4. Server replies with content for web page and Output Devices
browser retrieves
content from the HTTP packets
and renders Actuator: type of motor that is responsible for moving or
controlling a mechanism or system through which a
Client-side script: code that runs on client written using
control system
acts upon an environment.
language supported by browser e.g. Javascript. Enables

WWW.ZNOTES.ORG
CAIE AS LEVEL COMPUTER SCIENCE (9618)

Printer: output device that makes a persistent readable Static RAM (SRAM) Dynamic RAM
representation of graphics/text on physical media. Consumes more
Inkjet printer: non-impact printers which work by Consumes less power
power
propelling
variably-sized droplets of liquid or molten
Faster data access
material (ink) onto
physical media Slower data access time
time
Laser printer: non-impact printers which work by
repeatedly
passing a laser beam back & forth over an Lower storage
Higher storage capacity
electron-charged,
cylindrical drum, to define a capacity
differentially-charged image. Drum
selectively collects Not possible to Memory can be deleted & refreshed
charged, powdered ink, and transfers image
to loaded refresh programs while running a program
paper, which is then heated to fuse.
Speakers: device which outputs sound by converting .
digital
signals of sound from the computer to analogue
Logic Gates
Secondary Storage Device
Logic Gates: use one or more inputs and produces a
Optical disks: flat, usually circular disc which encodes single
logical output
binary
data in form of pits and lands. Pits = 0, due to lack AND gate: If both inputs high, output is high
of reflection
and lands = 1, due to reflection when read
Hard disk: data storage device consisting of rotating A B Output
disks,
platters, and magnetic heads arranged on an 0 0 0
actuator arm to read and
write data to the surfaces.
0 1 0
Flash memory: solid state devices which have no moving
parts and
data is programmed onto them 1 0 0
1 1 1

Need for Primary and Secondary


Storage
Primary storage: computer’s main memory; RAM & ROM
Necessary for executing a program (RAM) or storing OR gate: If either inputs high, output is high, A + B
permanent system
data (ROM)
However, RAM is volatile and ROM is non-editable ∴ A B Output
important to have a more permanent, non-volatile form 0 0 0
of storage to
store e.g. documents and images = 0 1 1
secondary storage device,
generally a hard disk
1 0 1
1 1 1
RAM and ROM
RAM ROM
Random access memory Read only memory
Used to store data during runtime Used to store system
of the computer information NOT gate: an inverter, A
Can read & write data Can only read data
A Output
Volatile: data gone when computer Non-volatile: data is
switched off never deleted 1 0
0 1
.

Static and Dynamic RAM


Static RAM (SRAM) Dynamic RAM NAND gate: A.B
Needs 6 to 8
Needs 3 to 4 transistors
transistors A B Output
More space in a chip Less space in a chip 0 0 1
4× more expensive Cheaper 0 1 1
1 0 1

WWW.ZNOTES.ORG
CAIE AS LEVEL COMPUTER SCIENCE (9618)

1 1 0 instruction that is to
be used.
Index register (IR): a microprocessor register used for
modifying operand addresses during run of a program.
Used if address
indirect; a constant from the instruction
added to contents of IR to
form address to operand/data
Current instruction register (CIR): holds the instruction
NOR gate: A + B that
is to be executed.
Status register (SR): holds results of comparisons to

decide
later for action, intermediate results of arithmetic
A B Output
performed and
any errors occurred during arithmetic
0 0 1 General-purpose register: One or more registers in the
0 1 0 CPU that
temporarily store data
1 0 0 Accumulator: single general-purpose register inside ALU.
1 1 0 It is a
single general-purpose register where all values
held when processed
by arithmetic & logical operations.

The Processor
Arithmetic and logic unit (ALU): part of processor that
XOR gate: A  ⨁  B ​

performs
arithmetic calculations & logical decisions
Arithmetic operations: add, subtract, multiply etc.
A B Output Logical operations: comparing binary patterns and
0 0 0 making
decisions
0 1 1 Control unit: part of processor that fetches instructions
from
memory, decodes them & synchronizes operations
1 0 1
before sending
signals to other parts of the computer.
1 1 0 System clock: timing device connected to the processor
that
synchronizes when fetch-execute cycle runs

Integrated circuit: set of electronic circuits on one small


plate ("chip") of semiconductor material (e.g. silicon) System Buses
Bus: set of parallel wires that connect various
Processor Fundamentals components &
provides communication between them
Data bus: bi-directional, used to carry data and
instructions
between system components. The memory
Von Neumann Machine data register (MDR) is at one
end of the data bus.
Address bus: unidirectional, carries address of main
Von Neumann realized data and programs are memory
location or input/output device about to be used
indistinguishable & can
therefore use the same memory. from processor to
memory address register (MAR)
Von Neumann architecture uses a single processor. Control bus: bi-directional, used to send control signals
It follows a linear sequence of fetch–decode–execute from
control unit to ensure access/use of data & address
operations for
the set of instructions i.e. the program. buses by
components of system does not lead to conflict
In order to do this, the processor has to use registers.

Registers
Registers: an extremely fast piece of on-chip memory,
usually 32
or 64 bits in size for temporary storage
Registers are outside the immediate access store and
consequently
allow faster access to the data they store.

Special registers have special


purposes:

Program counter (PC): keeps track of where to find next


instruction so that a copy of the instruction can be placed
in the
current instruction register.
Memory data register (MDR): acts like a buffer & holds
anything
copied from memory ready for processor to use Performance of a Computer System
Memory address register (MAR): used to hold memory
address that
contains either the next piece of data or an

WWW.ZNOTES.ORG
CAIE AS LEVEL COMPUTER SCIENCE (9618)

Clock speed: the number of cycles that are performed by Interrupt register: a special register in the CPU
the CPU
per second. Faster clock speed means processes Before each cycle, the interrupt register is checked.
of fetch, decode and
execute occur faster however faster Depending on the priority of the interrupt, the running
clock speed causes processor to
heat up. process is
saved and the control of the processor is
Bus width: determines maximum possible memory passed to the interrupt
handler
capacity of the
system. Wider bus width means more bits
can be transferred
simultaneously. Interrupt handler a.k.a. Interrupt Service Routine (ISR):

Different ISRs are used for different source of interrupt


Peripheral Devices Typical sequence of actions when interrupt occurs:
Current fetch-execute cycle completed
Peripheral devices: hardware device outside the CPU Contents of all registers, especially PC, stored away
Cannot be connected directly to processor ∴ processor Source of interrupt identified
controls and communicates through an I/O controller If low priority: then disabled
I/O controller: electronic circuit board consisting of: If high priority: PC loaded with address of relevant ISR
Interface allowing connection of controller to system ISR executed
Set of data, command and status registers All registers except for PC are restored to original
I/O Port: Interface that enables the connection of the Interrupts re-enabled
controller to the device PC is then restored
I/O ports allow I/O devices to be connected to the CPU Return to start of cycle
without
having to have specialized hardware for each one
i.e. a USB port can
connect many different I/Os Processor’s Instruction Set
Fetch-Execute Cycle Op Code Operand Explanation
Addressing
The fetch stage:
Immediate: Load n into
Copy the address that is in the PC into the MAR LDM #n
ACC
Increment the PC (ready for the next fetch)
Load the instruction in address of MAR into the MDR Direct: load contents at
LDD
Load the instruction in MDR into the CIR address into the ACC
The decode stage: Indirect: Load contents of
Identify type of addressing used by instruction LDI address at given address
Direct address: load copy into
MAR & retrieve data into ACC
Indirect address: add address
to IR, copy result to Indexed: Load contents of
LDX
MAR given address + IR into ACC
Retrieve contents of new address Data Movement
Decode the instruction
Store contents of ACC into
The execute stage: STO
address
If instruction is a jump instruction, load address
operand into
PC then go to start Arithmetic Operations
If not, execute instruction then go to start Add contents of register to
ADD
ACC

Register Transfer Notation (RTN) Add 1 to contents of the


INC
register
Here the cycle is depicted by RTN: Comparing
MAR ← PC Compare contents of ACC
CMP
PC ← PC + 1 with that of given address
MDR ← M AR Compare contents of ACC
CMP #n
CIR ← M DR with n
Decode Conditional Jumps
Execute Jump to address if
Return to start JPE
compare TRUE
Square bracket denote value currently in that register
Jump to address if
Double square bracket means the CPU must do a logical JPN
compare FALSE
process and
then copy this value
Unconditional Jumps
JMP Jump to given address
Interrupts
I/O Data
A signal from some device or source seeking the attention Input any character and
IN
of the
processor store ASCII value in ACC

WWW.ZNOTES.ORG
CAIE AS LEVEL COMPUTER SCIENCE (9618)

Op Code Operand Explanation


Output character whose
OUT
ASCII value is stored in ACC
Ending
Return Control to
END
operating system
# denotes immediate
addressing
B denotes a binary
number, e.g.
B01001010
& denotes a
hexadecimal number,
e.g. &4A

Addressing
Indirect Addressing: The address to be used is at the given Relative addressing: next instruction to be carried out is an
address.
Load contents of this second address to the ACC offset
number of locations away, relative to address of
current instruction
held in PC; allows for relocatable code
Example:
Example of jumps in pseudocode:
LDI 203

Go to location 203
Contents of location 203 is 200 so go to location 200
From location 200, loads contents into accumulator

1st line shows a conditional jump, next instruction 3


lines
away if accumulator contains 2
2nd line shows an unconditional jump where 5 lines are
skipped and the code carries on, avoiding some lines

Conditional jump: has a condition that will be checked


(like
using an IF statements)
Unconditional jump: no condition to be followed, simply
jump to
the next instruction as specified

Assembly Language and Machine Code


Assembly language: low-level programming language with
instructions made up of an op code and an operand
Machine code: code written in binary that uses the
processor’s
basic machine operations
Relationship: every assembly language instruction
translates
into one machine code instruction (1 to 1)
Symbolic addressing:
Indexed addressing: form the address to be used as
Mnemonics used to represent operation codes e.g. IN
<address> + the
contents of the IR (Index Register)
Labels can be used for addresses e.g. PRICE
Example: Absolute addressing: a fixed address in memory
Assembly directives are used to specify:
LDX 101 Starting addresses for programs
Starting values for memory locations
Index Register = 3 Specify the end of program text
Therefore, address to be used = 101 + 3 = 104 Macros: sequence of instructions, assigned by a name
Contents of address 104 is loaded into the Accumulator and could
be used anywhere in the program. Macro
instructions are expanded
into a group of instructions.
Assembler:

WWW.ZNOTES.ORG
CAIE AS LEVEL COMPUTER SCIENCE (9618)

Software that changes assembly language into Carries out the process of preparing a data storage device
machine code for
the processor to understand such as a
hard disk drive, for initial use
The assembler replaces all mnemonics and labels with Formatting, process where the computer ‘draws lines’ on
their
respective binary values the surface
of disk surface to split it into small areas.
These binary values are predefined before by the
assembler
software Virus checker:

Assembly processes: Finds and removes computer viruses from a computer


When files sent from one computer to another, possible it
One pass assembler: may
contain a virus that can infect receiving computer
Assembler converts mnemonic source code into Virus checker keeps a constant check on files, searching
machine code in one
sweep of program for viruses
and deletes it if found.
Cannot handle code that involves forward referencing
Two pass assembler: software makes 2 passes thru code Defragmenter software:
On the first pass:
Reorganizes files & unused space on hard disk so
Symbol table created to enter symbolic addresses and
operating system
accesses data quicker
labels into
specific addresses
Files can be big so have to be stored in multiple sectors
All errors are suppressed
Fragmentation, contents of a file are scattered across two
On the second pass:
or more
noncontiguous sectors
Jump instructions can access memory addresses from
Fragmentation slows down disk access and thus the
the table
performance of the
entire computer.
Whole source code translate into machine code
Defragmenting disk: reorganizing files so they are stored
Error reported if they exist
in
contiguous sectors

System Software Disk content analysis software:

Software utility for visualization of disk space usage


Gets size for each folder and files, and generates a
Operating System graphical chart
showing disk usage distribution according
to folders or other user
defined criteria.
A set of programs designed to run in the background on a
computer
system which File compression:
Controls operation of computer system
Provides a user interface Reduces the size of a file by cutting out much of the
Controls how computer responds to user’s requests duplication of
data in the file.
Controls how hardware communicate with each other Causes improvements in the computer’s performance by
Provides an environment in which application reducing the
data that needs to be stored
software can be
executed
Automatic Backup:
The operating system (OS) must provide:
Duplicate important data in the event of a hard drive
Management of resources of the computer system: failure, user
error, disaster or accident.
Processor management: for multiprogramming Can be used for individual computers or for an
decide which job will
get the next use of the processor enterprise’s
computers and servers.
File management: maintaining a list of files, Software can be set to backup selected files and folders
directories and
which fi le allocation units belong to on a
scheduled basis or as required.
which fi les
Input/output management: control of all input and Library Programs
output devices
attached to the computer
An interface between the user and the machine Collections of resources used to develop software
An interface between applications software & machine
Made up of pre-written code & functions, subroutines
Security for the data on the system Provide services to other more complex programs
Utility software to allow maintenance to be done. Example: the design of a program running on Windows 7
All programs run on Windows use Windows GUI
Utility Programs library
Produces same “feel” when running any program
Type of system software designed to help analyze,
configure,
optimize and maintain computer. Advantages Disadvantages
Less time consuming Prone to viruses
Disk formatter:
Reduces need for May require manual tweak -
testing tedious

WWW.ZNOTES.ORG
CAIE AS LEVEL COMPUTER SCIENCE (9618)

Advantages Disadvantages Security of Data Security of System


Better/advanced Protection of data on a
Protection of the computer system
engines computer system
To prevent corruption of To prevent access of viruses to the
Dynamic Link Library Files (DLL): data and prevent system and prevent hackers to
hackers from using data enter your computer system
A file acting as a library that contains code and data
E.g. encryption E.g. ID & Password
Can be used by different programs running
simultaneously
∴ reduces strain on memory
.
Each DLL file can be seen as modules in a more complex
program,
making it easier to install and run updates
Security Measures for Computer
Language Translators Systems
Assembler: User Accounts:
Translates assembly language into machine code Each user has an ID and password which are the log in
The mnemonics used translates into machine details
for his user account
opcodes User assigned privilege which gives him access to only
Process simple because assembly language has a one- his
workspace, preventing him to have admin rights.
to-one
relationship with machine code. Can assign privilege to files so users with low
Assembler basically translate mnemonics into binary privileges do
not have access.
Compiler: translation of a high-level language program Firewalls:
Translates high level code into low level code Set of programs, located at network gateway, that
Reason for translating: create an executable program protects the
resources of a private network from
users from other networks
Advantages Disadvantages Filters information incoming to computer system
Only be produced when all Information packets can be flagged by firewall and
.exe easily distributed
errors are fixed thus not
allowed through
With .exe, don’t need compiler Development process long Authentication techniques:
software – locating errors Digital signatures: a unique personal trait required by
No source code – users not a
computer to access certain data
Uses a lot of resources Password: case-sensitive, unique string of letters,
able to edit/plagiarize
numbers and
special characters.
Biometric scans e.g. retina, fingerprint, palm
Interpreter: execution of a high-level language program
Program translated line-by-line
Security Measures for Data
Advantages Disadvantages
Can run program any time, Execution very slow – Data backup: an exact copy of an original piece of data in
even before code finished translated each time run case
the original is lost or corrupted
Debugging easier/faster Interpreter needed Can be made on any type of storage device
May be within the same computer system or at a
No .exe produced
different site
Disk-mirroring strategy: real-time strategy that writes
High level language programs may be partially compiled
data to
two or more disks at the same time.
and partially
interpreted, such as Java
If one fails, the other is still there to be read off of
It can be done using more than one extra hard disk
Security, Privacy and Data Encryption: conversion of data to code by encoding it
Data stored in an incomprehensive state
Integrity Doesn’t prevent illegal access but appears
meaningless
Necessary to use decryption software to decode data
Data security: making sure that data is protected against Encryption keys complex algorithms; cannot crack
loss
and unauthorized access. Access rights to data (authorization): different users are
Data integrity: making sure that the data is valid. assigned different authorization levels which prevent
Privacy of Data: deals with the ability to determine what them from
accessing all the data so increase security
data
is shared with the third party

Errors that can Occur


Security of Data and Computer System

WWW.ZNOTES.ORG
CAIE AS LEVEL COMPUTER SCIENCE (9618)

Data held in a computer system may become corrupted in Any bits lost at most-significant end as carry ignored so
different ways
and at many stages during data processing: answer is
an 8 bit number
Checksum calculated before and after data sent
Errors on input: data keyed in wrongly, a batch of data If two bytes different, error occurred therefore block of
could be
lost or accidently entered twice bytes must
be sent again
Errors in operating procedures: update master file twice
Program errors: could lead to a corruption of files which
may
only surface later on Ethics and Ownership
Viruses: files can be corrupted or deleted when a disk is
infected with a virus Computer Ethics: how computing professionals should
Transmission errors: interference in communications link make
decisions regarding professional & social conduct.
may
cause bits to be wrongly received

ACM/IEEE Software Engineering Code


Data Validation
of Ethics
Data validation: checks data entered is sensible
Eight ethics principles of software engineers (SEs):
Range check: data must be between a set of values
Character check: data must have correct character type Public: act consistently in the public interest
Format check: data must follow correct pattern/order Client: act in the best interests of client
Length check: data must have an exact no. of characters Employer: act in the best interests of employer
Existence check: data entered must exist (e.g. barcode Product: software and related modifications meet highest
must
correlate to an item) possible standards
Check digit: 1 digit is used to be answer to an arithmetic Judgment: maintain integrity and independence in their
operation of other digits in data. If not matched then data professional judgment
entered
incorrectly Management: team leaders should subscribe to and
promote an
ethical approach to the management of
Data can be valid but this doesn’t mean data is
accurate software development and
maintenance.
Profession: advance integrity & reputation of profession
Data Verification for Data Entry Colleague: be fair to & supportive of colleagues
Self: participate in lifelong learning regarding practice of
Data verification: checks data entered is accurate profession

Person manually compares original data with that Ownership


entered to check if
correct
Enter data into computer twice and compares. Data ownership: having legal rights and complete control
If differences found, go back to raw data to fix error
over a
single piece or set of data elements.
Copyright gives the creators of some types of media
Data Verification during Data Transfer rights to
control how they're used and distributed.
Programming ideas and methods can be stolen by
Errors may occur when data moved from one point to competitors, software
can easily be copied and
another point in
system. Following find errors: bootlegged (sold illegally) hence
legislation is needed to
protect the ownership, usage and copy right
of data.
Parity Check:

All data transmitted as bits Software Licensing


Number of 1s in a byte must always be either an odd
number or an
even number Free Software Foundation:
Parity can be set either as even or odd
Example: two communicating devices decide there will License gives user freedom to run, copy, distribute, study,
always be an
odd number of 1s. A byte is received that change
and improve software.
has an even number of 1s
so error must have occurred Condition: any redistributed version of software must be
and receiving device would ask for it to
be sent again distributed
with original terms of free use, modification,
Used also when data sent between parts of the CPU and distribution (aka
copyleft)
Not foolproof: if 2 errors made, data accepted The Open Source Initiative:
Checksum Check:
Source code of an open-source software is readily
Data sent from one place to another as block of bytes available to users
under a copyright; does not enable
rather than
individual bytes user to re-distribute the
software
Computer adds together all bytes being sent Concept of open-source program relies on fact that a
user can review
a source-code for eliminating bugs in it

WWW.ZNOTES.ORG
CAIE AS LEVEL COMPUTER SCIENCE (9618)

Shareware: Lock record currently being edited – as someone changes


something, others can only read record
Demonstration software that is distributed for free but User specifies no locks – software warns user of
for a
specific evaluation period only simultaneous
change, resolve manually
Distributed on trial basis and with an understanding that Deadlock: 2 locks at the same
time, DBMS must
sometime
later a user may be interested in paying for it recognize, 1 user must abort task
Used for marketing purposes
Tools in a DBMS:
Commercial: Requires payment before it can be used, but
includes all
program's features, with no restrictions Developer interface: allows creating and manipulating
database
in SQL rather than graphically
Query processor: handles high-level queries. It parses,
Database and Data Modelling validates, optimizes, and compiles or interprets a query
which
results in the query plan.

File Based System


Relational Database Modelling
Data stored in discrete files, stored on computer, and can
be
accessed, altered or removed by the user Entity: object/event which can be distinctly identified
Table: contains a group of related entities in rows and
Disadvantages of File Based System: columns
called an entity set
Tuple: a row or a record in a relation
No enforcing control on organization/structure of files Attribute: a field or column in a relation
Data repeated in different files; manually change each
Primary key: attribute or combination of them that
Sorting must be done manually or must write a program uniquely
define each tuple in relation
Data may be in different format; difficult to find and use Candidate key: attribute that can potentially be a primary
Impossible for it to be multi-user; chaotic
key
Security not sophisticated; users can access everything Foreign key: attribute or combination of them that relates
2
different tables
Database Management Systems Referential integrity: prevents users or applications from
entering inconsistent data
(DBMS) Secondary key: candidate keys not chosen as the primary
key
Database: collection of non-redundant interrelated data
Indexing: creating a secondary key on an attribute to
DBMS: Software programs that allow databases to be
provide
fast access when searching on that attribute;
defined,
constructed and manipulated indexing data must be
updated when table data changes
Features of a DBMS:
Relational Design of a System
Data management: data stored in relational databases -
tables
stored in secondary storage
Data dictionary contains:
List of all files in database
No. of records in each file
Names & types of each field
Data modeling: analysis of data objects used in database,
identifying relationships among them
Logical schema: overall view of entire database, includes:
entities, attributes and relationships
Data integrity: entire block copied to user’s area when Normalization
being
changed, saved back when done
Data security: handles password allocation and 1st Normal Form (1NF): contains no repeating attribute or
verification,
backups database automatically, controls groups of attributes. Intersection of each tuple and attribute
what certain user’s view by
access rights of individuals or contains
only 1 value. Example:
groups of users

Data change clash solutions:

Open entire database in exclusive mode – impractical


with
several users
Lock all records in the table being modified – one user
changing
a table, others can only read table

WWW.ZNOTES.ORG
CAIE AS LEVEL COMPUTER SCIENCE (9618)

Creation/modification of the database structure using


this language
written in SQL
Creating a database:

‘’’python
CREATE DATBASE <database-name>
‘’’

Creating a table:

‘’’python
CREATE TABLE <table-name> (…)
‘’’
2nd Normal Form (2NF): it is in 1NF and every non-primary
key attribute is fully dependent on the primary; all the Changing a table:
incomplete
dependencies have been removed. Example:
‘’’python
ALTER TABLE <table-name>
ADD <field-name><data-type>
‘’’

Adding a primary key:

‘’’python
PRIMARY KEY (field)
‘’’

Adding a foreign key:

‘’’python

FOREIGN KEY (field) REFERENCES <table>(field)

‘’’

Example:

‘’’python

CREATE DATABASE ‘Personnel.gdb’


CREATE TABLE Training
(EmpID INT NOT NULL,
CourseTitle VARCHAR(30) NOT NULL,
CourseDate Date NOT NULL,
PRIMARY KEY (EmpID, CourseDate),
FOREIGN KEY (EmpID) REFERENCES
Employee(EmpID))

3rd Normal Form (3NF): it is in 1NF and 2NF and all


non-key ‘’’
elements are fully dependent on the primary key. No
inter-
dependencies between attributes. Data Manipulation Language (DML)
MANY-TO-MANY functions cannot be directly normalized Query and maintenance of data done using this language
to 3NF, must
use a 2 step process e.g. – written in
SQL

Queries:

becomes: Creating a query:

‘’’python
Example:
SELECT <field-name>
FROM <table-name>
Data Definition Language (DDL) WHERE <search-condition>

WWW.ZNOTES.ORG
CAIE AS LEVEL COMPUTER SCIENCE (9618)

‘’’ INNER JOIN


‘’’
SQL Operators: Data Maintenance:

= Equals to Adding data to table:


> Greater than
‘’’python
< Less than
INSERT INTO <table-name>(field1, field2, field3)
>= Greater than or equal to VALUES (value1, value2, value3)
<= Less than or equal to ‘’’
<> Not equal to
Deleting a record:
IS NULL Check for null values
‘’’python
Sort into ascending order:
DELETE FROM <table-name>
‘’’python WHERE <condition>
ORDER BY <field-name>
‘’’ ‘’’

Arrange identical data into groups: Updating a field in a table:

‘’’python ‘’’python
GROUP BY <field-name>
UPDATE <table-name>
‘’’
SET <field-name> = <value>
Joining together fields of different tables: WHERE <condition>

‘’’python ‘’’

WWW.ZNOTES.ORG
CAIE AS LEVEL
COMPUTER SCIENCE (9618)

Copyright 2021 by ZNotes


These notes have been created by Saketh Devareddy for the 2021-23 syllabus
This website and its content is copyright of ZNotes Foundation - © ZNotes Foundation 2021. All rights reserved.
The document contains images and excerpts of text from educational resources available on the internet and
printed books. If you are the owner of such media, test or visual, utilized in this document and do not accept its
usage then we urge you to contact us and we would immediately replace said media.
No part of this document may be copied or re-uploaded to another website without the express, written
permission of the copyright owner. Under no conditions may this document be distributed under the name of
false author(s) or sold for financial gain; the document is solely meant for educational purposes and it is to
remain a property available to all at no cost. It is current freely available from the website www.znotes.org
This work is licensed under a Creative Commons Attribution-NonCommerical-ShareAlike 4.0 International
License.

You might also like