Computer All Notes
Computer All Notes
Page 1 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 2 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Worked Example
Explain why computers process data in binary format [2]
Answer
Computers process data using logic gates... [1]
... that can only have two states (1/0) [1]
Page 3 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Number Systems
Your notes
The Denary, Binary & Hexadecimal Number Systems
What is denary?
Denary is a number system that is made up of 10 digits (0-9)
Denary is referred to as a base-10 number system
Each digit has a weight factor of 10 raised to a power, the rightmost digit is 1s (100), the next digit to the
left 10s (101) and so on
Humans use the denary system for counting, measuring and performing maths calculations
Using combinations of the 10 digits we can represent any number
What is binary?
Binary is a number system that is made up of two digits (1 and 0)
Binary is referred to as a base-2 number system
Each digit has a weight factor of 2 raised to a power, the rightmost digit is 1s (20), the next digit to the
left 2s (21) and so on
Each time a new digit is added, the column value is multiplied by 2
Using combinations of the 2 digits we can represent any number
Page 4 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
What is hexadecimal?
Hexadecimal is a number system that is made up of 16 digits, 10 numbers (0-9) and 6 letters (A-F)
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0 1 2 3 4 5 6 7 8 9 A B C D E F
Page 5 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
16s 1s
Your notes
1 3
1 x16 3x1 = 19
A quick comparison table demonstrates a relationship between hexadecimal and a binary nibble
One hexadecimal digit can represent four bits of binary data
0 0000 0
1 0001 1
2 0010 2
3 0011 3
4 0100 4
5 0101 5
6 0110 6
7 0111 7
8 1000 8
9 1001 9
10 1010 A
11 1011 B
12 1100 C
Page 6 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
13 1101 D
Your notes
14 1110 E
15 1111 F
Page 7 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Example 1
To convert the denary number 45 to binary, start by writing out the binary number line
The first column heading larger than 45 is 64, so the number line would be:
32 16 8 4 2 1
13
32 16 8 4 2 1
Repeat with next column heading (how many times does 16 fit into 13?)
0 times with 13 remaining
Page 8 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
13 13
Your notes
32 16 8 4 2 1
1 0
13 13 5 1 1 0
32 16 8 4 2 1
1 0 1 1 0 1
Example 2
To convert the denary number 3059 to binary, start by writing out the binary number line
The first column heading larger than 3059 is 4096, so the number line would be:
Page 9 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
1011
Your notes
2,048 1,024 512 256 128 64 32 16 8 4 2 1
Repeat with next column heading (how many times does 1024 fit into 1011?)
0 times with 1011 remaining
1011 1011
1 0
1 0 1 1 1 1 1 1 0 0 1 1
Example 1 (4 bits)
To convert the binary number 1011 to denary, start by writing out the binary headings from right to left
8 4 2 1
Page 10 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Write in the binary digits under the headings from left to right
8 4 2 1
1 0 1 1
Example 2 (8 bits)
To convert the binary number 01100011 to denary, start by writing out the binary headings from right to
left
128 64 32 16 8 4 2 1
Write in the binary digits under the headings from left to right
128 64 32 16 8 4 2 1
0 1 1 0 0 0 1 1
Page 11 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
0 1 1 1 0 0 0 1 1 1 0 1 0 0
Page 12 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
128 64 32 16 8 4 2 1
0 0 0 1 1 1 0 0
Split the 8 bit binary number into two nibbles as shown below
8 4 2 1 8 4 2 1
0 0 0 1 1 1 0 0
Page 13 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
B (11) 9
8 4 2 1 8 4 2 1
1 0 1 1 1 0 0 1
128 64 32 16 8 4 2 1
1 0 1 1 1 0 0 1
Page 14 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Remember that the exam is non-calculator, if you are not confident multiplying and dividing by 16
then use method 1 on both conversions
Your notes
Page 15 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0 1 2 3 4 5 6 7 8 9 A B C D E F
Example 1
To convert the binary number 10110111 to hexadecimal, first split the 8 bit number into 2 binary nibbles
8 4 2 1 8 4 2 1
1 0 1 1 0 1 1 1
Example 2
To convert the binary number 00111001 to hexadecimal, first split the 8 bit number into 2 binary nibbles
8 4 2 1 8 4 2 1
0 0 1 1 1 0 0 1
Page 16 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
(1 x 8) + (1 x 1) = 9
Join them together to make a 2 digit hexadecimal number Your notes
Binary 00111001 is 39 in hexadecimal
Hexadecimal to Binary Conversion
How do you convert from hexadecimal to binary?
Example 1
To convert the hexadecimal number 5F to binary, first split the digits apart and convert each to a binary
nibble
8 4 2 1
0 1 0 1 =5
8 4 2 1
1 1 1 1 = 15 (F)
128 64 32 16 8 4 2 1
0 1 0 1 1 1 1 1
Example 2
To convert the hexadecimal number 26 to binary, first split the digits apart and convert each to a binary
nibble
8 4 2 1
0 0 1 0 =2
Page 17 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
8 4 2 1
Your notes
0 1 1 0 =6
128 64 32 16 8 4 2 1
0 0 1 0 0 1 1 0
Page 18 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Uses of Hexadecimal
Your notes
Uses of Hexadecimal
Why is hexadecimal used?
In Computer Science hexadecimal is often preferred when working with large values
It takes fewer digits to represent a given value in hexadecimal than in binary
1 hexadecimal digit corresponds 4 bits (one nibble) and can represent 16 unique values (0-F)
It is beneficial to use hexadecimal over binary because:
The more bits there are in a binary number, the harder it makes for a human to read
Numbers with more bits are more prone to errors when being copied
Examples of where hexadecimal can be seen:
MAC addresses
Colour codes
URLs
MAC addresses
A typical MAC address consists of 12 hexadecimal digits, equivalent to 48 digits in in binary
AA:BB:CC:DD:EE:FF
10101010:10111011:11001100:11011101:11101110:11111111
Writing down or performing calculations with 48 binary digits makes it very easy to make a mistake
Page 19 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Colour codes
A typical hexadecimal colour code consists of 6 hexadecimal digits, equivalent to 24 digits in binary Your notes
#66FF33 (green)
01000010:11111111:00110011
URL's
A URL can only contain standard characters (a-z and A-Z), numbers (0-9) and some special symbols
which is enough for basic web browsing
Page 20 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
If a URL needs to include a character outside of this set, they are converted into a hexadecimal code
Hexadecimal codes included in a URL are prefixed with a % sign Your notes
Page 21 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Binary Addition
Your notes
Adding Positive 8-bit Binary Integers
What is binary addition?
Binary addition is the process of adding together two binary integers (up to and including 8 bits)
To be successful there are 5 golden rules to apply:
0+0= 0 1s
0 =0
0+1= 1 1s
1 =1
1+0= 1 1s
1 =1
1+1= 10 2s 1s
1 0 =2
1+1+1= 11 2s 1s
1 1 =3
Page 22 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Like denary addition, start from the rightmost digit and move left
Carrying over occurs when the sum of a column is greater than 1, passing the excess to the next left Your notes
column
Example 1
Add together the binary values 1001 and 0100
8 4 2 1 +
1 0 0 1
0 1 0 0
Starting from right to left, add the two binary values together applying the 5 golden rules
If your answer has 2 digits, place the rightmost digit in the column and carry the remaining digit to the
next column on the left
In this example, start with 1+0, 1+0 = 1, so place a 1 in the column
8 4 2 1 +
1 0 0 1
0 1 0 0
8 4 2 1 +
Page 23 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
1 0 0 1
Your notes
0 1 0 0
1 1 0 1
The sum of adding together binary 1001 (9) and 0100 (4) is 1101 (13)
Example 2
Add together the binary values 00011001 and 10000100
128 64 32 16 8 4 2 1 +
0 0 0 1 1 0 0 1
1 0 0 0 1 0 0 1
Starting from right to left, add the two binary values together applying the 5 golden rules
If your answer has 2 digits, place the rightmost digit in the column and carry the remaining digit to the
next column on the left
In this example, start with 1+1, 1+1 = 10, so place a 0 in the column and carry the 1 to the next column
128 64 32 16 8 4 2 1 +
Page 24 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
0 0 0 1 1 0 0 1
Your notes
1 0 0 0 1 0 0 1
1 C
128 64 32 16 8 4 2 1 +
0 0 0 1 1 0 0 1
1 0 0 0 1 0 0 1
1 1 1 C
1 0 1 0 0 0 1 0
The sum of adding together binary 00011001 (25) and 10001001 (137) is 10100010 (162)
256 128 64 32 16 8 4 2 1 +
1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 1
1 1 1 1 1 1 1 1 C
Page 25 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
0 0 0 0 0 0 0 0
Your notes
Page 26 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Binary Shifts
Your notes
Binary Shifts
What is a logical binary shift?
A logical binary shift is how a computer system performs basic multiplication and division on non-
negative values (0 and positive numbers)
Binary digits are moved left or right a set number of times
A left shift multiplies a binary number by 2 (x2)
A right shift divides a binary number by 2 (/2)
A shift can move more than one place at a time, the principle remains the same
A left shift of 2 places would multiply the original binary number by 4 (x4)
128 64 32 16 8 4 2 1
0 0 1 0 1 0 0 0
To perform a left logical binary shift of 1, we move each bit 1 place to the left
The digit in the 128 column (MSB) will move left causing an overflow error
The 1 column becomes empty so is filled with a 0
128 64 32 16 8 4 2 1
0 1 0 1 0 0 0 = 40
0 1 0 1 0 0 0 0 = 80
The original binary representation of denary 40 (32+8) was multiplied by 2 and became 80 (64+16)
0 0 0 1 1 1 0 0
To perform a left binary shift of 2, we move each bit 2 places to the left
The digit in the 128 (MSB) and 64 column will move left causing an overflow error
The 1 and 2 column become empty so are filled with a 0
128 64 32 16 8 4 2 1
0 1 1 1 0 0 = 28
0 1 1 1 0 0 0 0 = 112
The original binary representation of denary 28 (16+8+4) was multiplied by 4 and became 112
(64+32+16)
128 64 32 16 8 4 2 1
0 0 1 0 1 0 0 0
To perform a right binary shift of 1, we move each bit 1 place to the right
The digit in the 1 column (LSB) will move right causing an underflow error
The 128 column becomes empty so is filled with a 0
128 64 32 16 8 4 2 1
0 0 1 0 1 0 0 = 40
0 0 0 1 0 1 0 0 = 20
Page 28 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
The original binary representation of denary 40 (32+8) was divided by 2 and became 20 (16+4)
128 64 32 16 8 4 2 1
1 1 0 0 1 0 0 0
To perform a right binary shift of 2, we move each bit 2 places to the right
The digits in the 1 (LSB) and 2 columns will move right causing an underflow error
The 128 and 64 columns become empty so are filled with a 0
128 64 32 16 8 4 2 1
1 1 0 0 1 0 = 200
0 0 1 1 0 0 1 0 = 50
The original binary representation of denary 200 (128+64+8) was divided by 4 and became 50
(32+16+2)
Page 29 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Two's Complement
Your notes
Two's Complement
What is two's complement?
Two's complement is a method of using signed binary values to represent negative numbers
Using two's complement the left most bit is designated the most significant bit (MSB)
To represent negative numbers this bit must equal 1, turning the column value in to a negative
Working with 8 bits, the 128 column becomes -128
-128 64 32 16 8 4 2 1
1 1 1 1 1 1 1 1 = -1
In the example above to represent -1, add column values with a 1 to the MSB
MSB (-128)
Add 64 (-128+64 = -64
Add 32 (-64+32 = -32)
Add 16 (-32+16 = -16)
Add 8 (-16+8 = -8)
Add 4 (-8+4 = -4)
Add 2 (-4+2 = -2)
Add 1 (-2+1 = -1)
The two's complement representation of -1 is 11111111
128 64 32 16 8 4 2 1
Page 30 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
0 1 0 0 1 1 0 0 = 76
Your notes
Starting from the least significant bit (right most column), copy out the binary values up to and
including the first 1
-128 64 32 16 8 4 2 1
1 0 0
-128 64 32 16 8 4 2 1
1 0 1 1 0 1 0 0
-128 + 32 + 16 + 4 = -76
The two's complement representation of -76 is 10110100
Page 31 of 31
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Character Sets
Your notes
Character Sets
What is a character set?
A character set is all the characters and symbols that can be represented by a computer system
Each character is given a unique binary code
Character sets are ordered logically, the code for ‘B’ is one more than the code for ‘A’
A character set provides a standard for computers to communicate and send/receive information
Without a character set, one system might interpret 01000001 differently from another
The number of characters that can be represented is determined by the number of bits used by the
character set
Two common character sets are:
American Standard Code for Information Interchange (ASCII)
Universal Character Encoding (UNICODE)
ASCII
What is ASCII?
ASCII is a character set and was an accepted standard for information interchange
ASCII uses 7 bits, providing 27 unique codes (128) or a maximum of 128 characters it can represent
Page 2 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Page 3 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
ASCII only represents basic characters needed for English, limiting its use for other languages
Extended ASCII
Extended ASCII uses 8 bits, providing 256 unique codes (28 = 256) or a maximum of 256 characters it
can represent
Extended ASCII provides essential characters such as mathematical operators and more recent
symbols such as ©
UNICODE
What is UNICODE?
UNICODE is a character set and was created as a solution to the limitations of ASCII
UNICODE uses a minimum of 16 bits, providing 216 unique codes (65,536) or a minimum of 65,536
characters it can represent
UNICODE can represent characters from all the major languages around the world
Page 4 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Exam questions often ask you to compare ASCII & UNICODE, for example the number of bits,
number of characters and what they store
Your notes
ASCII vs UNICODE
ASCII UNICODE
Uses Used to represent characters in the Used to represent characters across the
English language. world.
Benefits It uses a lot less storage space than It can represent more characters than
UNICODE. ASCII.
It can support all common characters
across the world.
It can represent special characters such
as emoji's.
Drawbacks It can only represent 128 characters. It uses a lot more storage space than
ASCII.
It cannot store special characters such
as emoji's.
Worked Example
The computer stores text using the ASCII character set.
E 69
Page 5 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
F 70
G 71 Your notes
H 72
(a)
Identify the character that will be represented by the ASCII denary code 76 [1]
(b)
Identify a second character set [1]
Answers
(a) L (must be a capital)
(b) UNICODE
Page 6 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Representing Sound
Your notes
How Sound is Sampled & Stored
How is sound sampled & stored?
Measurements of the original sound wave are captured and stored as binary on secondary storage
Sound waves begin as analogue and for a computer system to understand them they must be
converted into a digital form
This process is called Analogue to Digital conversion (A2D)
The process begins by measuring the amplitude of the analogue sound wave at a point in time, called
samples
Each measurement (sample) generates a value which can be represented in binary and stored
Using the samples, a computer is able to create a digital version of the original analogue wave
The digital wave is stored on secondary storage and can be played back at any time by reversing the
process
In this example, the grey line represents the digital wave that has been created by taking samples of the
original analogue wave
In order for the digital wave to look more like the analogue wave the sample rate and bit depth can be
changed
Page 7 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
In this example you can see that the higher the sample rate, the closer to the original sound wave the digital
version looks
Page 8 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
The sampling rate of a typical audio CD is 44.1kHz (44,100 Hertz or 44,100 samples per second)
Using the graphic above helps to answer the question, “Why does telephone hold music sound so
bad?”
Playback quality ⇑ ⇓ ⇑ ⇓
File size ⇑ ⇓ ⇑ ⇓
Page 9 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Representing Images
Your notes
Bitmap Images
What is a bitmap?
A bitmap image is made up of squares called pixels
A pixel is the smallest element of a bitmap image
Each pixel is stored as a binary code
Binary codes are unique to the colour in each pixel
A typical example of a bitmap image is a photograph
The more colours and more detail in the image, the higher the quality of the image and the more binary
that needs to be stored
In an image with a colour depth of 2, you would have 00, 01, 10 & 11 available binary codes, so 4 colours
Page 11 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
1 bit 2 (B&W)
2 bit 4
4 bit 16
8 bit 256
Page 12 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Worked Example
1. Define the term Pixel [1]
2. If an image has a colour depth of 2 bits, how many colours can the image represent? [1]
3. Describe the impact of changing an images resolution from 500x500 to 1000x1000 [2]
Answers
1. The smallest element of a bitmap image (1 square)
2. 4
3. The image quality would be higher [1] the file size would be larger [1]
Page 13 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 12
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Bit b 1 or 0
Nibble 4b
Byte B 8b
Megabyte vs Mebibyte
1 kibibyte (1KiB) = 1024 bytes (1024 B) - binary prefixes (to the power of 2)
1 kilobyte (1KB) = 1000 bytes (1000 B) - decimal prefixes (to the power of 10)
Page 2 of 12
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
For example, 2000 kibibytes in mebibytes would be 2000 / 1024 = 1.95 MiB and 2 tebibytes in
gibibytes would be 2 * 1024 = 2048 GiB
Your notes
When dealing with bits and bytes the same process is used with the value 8 as there are 8 bits in a byte
For example, 24 bits in bytes would be 24 / 8 = 3 B and 10 bytes in bits would be 10 * 8 = 80 b
Unit
Byte
Mebibyte
Gibibyte
Tebibyte
Page 3 of 12
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Example
Image Files
OR
Image Files
Page 4 of 12
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Example
Sound Files
Duration 60 Seconds
Page 5 of 12
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 6 of 12
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Compression
Your notes
The Need For Compression
What is compression?
Compression is reducing the the size of a file so that it takes up less space on secondary storage
The impact of compression is:
Less storage space required
Less bandwidth required
Shorter transmission time
Compression can be achieved using two methods, lossy and lossless
Lossy Compression
What is lossy compression?
Lossy compression is when data is lost in order to reduce the size on secondary storage
Lossy compression is irreversible
Lossy can greatly reduce the size of a file but at the expense of losing quality
Lossy is only suitable for data where reducing quality is acceptable, for example images, video and
sound
In photographs, lossy compression will try to group similar colours together, reducing the amount of
colours in the image without compromising the overall quality of the image
Page 7 of 12
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Page 8 of 12
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
In the images above, lossy compression is applied to a photograph and dramatically reduces the file
size
Data has been removed and the overall quality has been reduced, however it is acceptable as it is
difficult to visually see a difference
Lossy compressed photographs take up less storage space which means you can store more and they
are quicker to share across a network
Lossless Compression
Page 9 of 12
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Page 10 of 12
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
In the image above, lossless compression is automatically applied to document formats such as
DOCX and PDF with a different rate of success
When you open a lossless compressed document the decompression process reverses the
algorithms and returns the data back to its original state
Lossless compressed documents take up less storage space which means you can store more and
they are quicker to share across a network
Worked Example
An email is sent containing a sound file.
Lossy compression is used to compress the sound file.
Explain two reasons why using lossy compression is beneficial. [4]
How to answer this question
Page 11 of 12
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 12 of 12
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Data Packets
Your notes
Data Packets
What are packets?
Packets are small 'chunks' of data that make up a larger piece of data that has been broken down by
the TCP protocol so that it can be transmitted over the internet
TCP stands for Transmission Control Protocol and is used for organising data transmission over
networks
Small 'chunks' of data are easier and quicker to route over the internet than big 'chunks' of data
Routing involves finding the most optimal path over a network
Data can include anything from text, images, audio, video, animations, etc, or any combination of these
Packet number
(1 of 5 etc.)
To transmit the message “This is a message :)”over the internet, TCP might break the message down
into 4 packets
Page 2 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Page 3 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Packet Switching
Your notes
Packet Switching
What is packet switching?
Packet switching is a method of sending and receiving data (packets) across a network
Packet switching can be broken down into five stages:
1 Data is broken down into Learn more by reading our data packets revision note
packets
3 Each packet makes its way Like normal car traffic, data traffic builds up on the internet
to the destination
Routers can see this and decide to send a packet down a
different route that avoids traffic
4 Routers controls the routes Routers know which nearby router is closer to the
taken for each packet destination device
5 Packets arrive and are If a packet does not reach its destination the receiver can
reordered correctly send a resend request to the sender to resend the packet
Page 4 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Worked Example
A local market shop wishes to arrange a delivery of goods from a supplier. Anna, the shop owner,
decides to send an email to request the delivery of the goods at a certain date and time.
Describe how packet switching is used to send this email and how it can be protected from
corruption.
[8]
Answer
The business email is first broken down into packets which are given a source address (where it's
come from) and a destination address (where it's going to) [1]
Each packet receives a packet number so that the email can be reassembled when it reaches its
destination [1]
Each packet also receives an error check such as a parity bit. A parity bit checks whether any
bits have been flipped due to corruption [1]
Each packet is sent over the internet via routers. Routers contain routing tables that determine
the next closest router to the destination [1]
Packets may take different routes depending on internet traffic and arrive at their destination in
any order [1]
Packets are checked for errors using the error checks and missing packets can be requested to
be resent [1]
Once all packets have been received then they can be put together in order using the packet
numbers [1]
Once assembled the original email can be read by the other business [1]
Page 5 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 6 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Data Transmission
Your notes
What is data transmission?
Data transmission is the process of transferring data from one device to another using a wired or
wireless connection
Wired data transmission can be completed in two ways:
Serial
Parallel
Serial transmission
A stream of bits is sent in sequence, one after the other
USB is an example of a wired serial connection
Parallel transmission
A stream of bits is sent in sequence, one after the other across multiple wires at the same time
Transmission is asynchronous, data does not always arrive at the same time
A skew can be caused by data arriving out of order in asynchronous transmission
A traditional printer cable is an example of a wired parallel connection
Page 7 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Simplex transmission
Data travels in only one direction
Sending data from a computer to a monitor is an example of simplex transmission
Half-duplex transmission
Data can travel in both directions, but not simultaneously (bi-directional)
A printer cable which waits for the data to be received before sending back a ‘low ink’ message is an
example of half-duplex transmission
Full-duplex transmission
Page 8 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Serial-Simplex
Data is transmitted one bit at a time in a single direction on one wire
Serial-Half-duplex
Data can be transmitted in both directions on a single wire but only one bit at a time can be
transmitted in one direction at a time
Serial-Full-duplex
Data can be transmitted in both directions at the same time on a single wire one bit at a time
Page 9 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Parallel-Simplex
Multiple wires transmit one bit at a time in one direction Your notes
Parallel-Half-duplex
Multiple wires send multiple bits of data in both directions but only one direction at a time
Parallel-Full-duplex
Multiple wires send multiple bits of data in both directions at the same time
Worked Example
A company has a website that is stored on a web server
The company uses parallel half-duplex data transmission to transmit the data for the new videos to
the web server.
Explain why parallel half-duplex data transmission is the most appropriate method.
[6]
Answer
Parallel would allow for the fastest transmission [1]
as large amounts of data [1]
can be uploaded and downloaded [1]
but this does not have to be at the same time [1]
Data is not required to travel a long distance [1]
Therefore, skewing is not a problem [1]
Page 10 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 11 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Devices are automatically detected and drivers are The maximum cable length is roughly 5
automatically loaded for communication metres meaning it cannot be used over
long distances, limiting its use
Cable connectors fit in only one way. Older versions of USB have limited
transmission rates for example USB 2.0
This prevents incorrect connections and ensures has 480Mbps
compatible data transmission
As USB usage is standardised, there is a lot of support Very old USB standards may not be
available online and from retailers supported in the near future (USB 1.1, USB
2.0, etc)
Page 12 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Worked Example
Julia uses a USB connection to transfer data onto her USB flash memory drive.
One benefit of using a USB connection is that it is a universal connection.
(i) State two other benefits of using a USB connection.
[2]
(ii) Identify the type of data transmission used in a USB connection.
[1]
Answers
(i) Any two of:
It cannot be inserted incorrectly [1]
Supports different transmission speeds [1]
High speed transmission [1]
Automatically detected [1]
Powers the device for data transfer [1]
(ii)
Serial [1]
Page 13 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Error Checking
Your notes
Why Errors Occur
Why do errors occur?
Errors can occur using wired or wireless technology due to interference
Examples of interference include wire degradation or electrical fields changing the signal
Results of interference include:
Data loss - data is lost in transmission
Data gain - additional data is received
Data change - some bits have been changed or flipped
Wireless technology uses radio signals or other electromagnetic signals to transmit data
These signals can be blocked by physical barriers such as buildings, walls, cars or other objects
Interference can be caused by bad weather such as rain or clouds, or by other wireless signals or
electromagnetic radiation
Wired technology carries more chance of causing an error as physical components can be damaged,
degrade or receive interference from outside signals
Data loss can also occur from interruptions to data transmission such as a blocked signal or if the
transmission is intermittent
Page 2 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Jul-04-16 (MMM/DD/YY)
If data is not as expected, things can go wrong
Your notes
For example, if a receiver expected to receive a date in format DD/MM/YY as 03/04/17 but received
04/03/17, did the sender mean 3rd April 2017 or 4th March 2017?
An error or corruption occurs when data received is not as expected and therefore is difficult or
impossible to process
Worked Example
Alex receives an email over a wireless connection from a work colleague containing an important
document.
Identify what interference Alex could experience when sending this email and identify the
outcomes of interference.
Further explain why Alex should check to make sure the document contains no errors.
[4]
Answer
Weather conditions or physical barriers such as building can affect signals, for example bits
could be flipped in the document making it hard to understand the original meaning [1]
Alex should be aware that interference can cause wirelessly received data to contain errors or
corruption [1]
Data could be lost, additional data could be gained or data could be changed [1]
As Alex received an important work document they need to check for errors so that their work is
unaffected and they do not receive incorrect information [1]
Page 3 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Even parity
Below is an arbitrary binary string
EVEN Byte
Parity bit
0 1 0 1 1 0 1 0
If an even parity bit is used then all bits in the byte, including the parity bit, must add up to an even
number
There are four 1’s in the byte
This means the parity bit must be 0 otherwise the whole byte, including the parity bit, would add up
to five which is an odd number
Odd parity
Below is an arbitrary binary string
Page 4 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
ODD Byte
Parity bit
Your notes
1 1 0 1 1 0 1 0
If an odd parity bit is used then all bits in the byte, including the parity bit, must add up to an odd
number
There are four 1’s in the byte. This means the parity bit must be a 1 otherwise the whole byte,
including the parity bit, would add up to four which is an even number
The table below shows a number of examples of the agreed parity between a sender and receiver and
the parity bit used for each byte
Example # Agreed parity Parity bit Main bit string Total number of 1’s
#1 ODD 0 1 1 0 1 0 1 1 5
#2 EVEN 1 0 0 0 1 0 0 0 2
#3 EVEN 1 0 1 0 1 1 1 1 6
#4 ODD 1 0 1 1 1 0 0 1 5
#5 ODD 1 1 0 1 0 1 0 1 5
#6 EVEN 0 1 0 0 1 1 1 0 4
Example #1: The agreed parity is odd. All of the 1’s in the main bit string are added (5). As this number is
odd already the parity bit is set to 0 so the whole byte stays odd
Example #2: The agreed parity is even. All of the 1’s in the main bit string are added (1). As this number is
odd the parity bit is set to 1 to make the total number of 1’s even (2)
Example #6: The agreed parity is even. All of the 1’s in the main bit string are added (4). As this number is
even already the parity bit is set to 0 so the whole byte stays even
Page 5 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Bits can be flipped or changed due to interference on a wire or wirelessly due to weather or other
signals
Your notes
Example # Agreed parity Parity bit Main bit string Total number of 1’s Error
#1 ODD 1 1 1 0 1 0 1 1 6 Error
#2 EVEN 1 0 0 0 1 0 0 0 2 No error
#3 EVEN 1 0 1 1 1 1 1 1 7 Error
#4 ODD 1 0 1 1 1 0 0 1 5 No error
#5 ODD 1 1 0 1 0 1 1 1 6 Error
#6 EVEN 0 1 0 0 0 1 1 0 3 Error
Parity checks are quick and easy to implement but fail to detect bit swaps that cause the parity to
remain the same
ODD Parity bit Bit 2 Bit 3 Bit 4 Bit 5 Bit 6 Bit 7 Bit 8
Byte 1 0 1 1 0 1 0 1 1
Byte 2 0 0 0 0 1 0 0 0
Page 6 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Byte 3 1 0 1 0 1 1 1 1
Your notes
Byte 4 1 0 1 1 1 0 0 1
Byte 5 1 1 0 1 0 1 0 1
Byte 6 1 1 0 0 1 1 1 0
Byte 7 0 0 1 1 1 1 1 0
Byte 8 0 1 0 1 1 0 0 0
Parity byte 0 1 1 1 1 1 1 1
Checksum
What is a checksum?
A checksum is a value that can be used to determine if data has been corrupted or altered
It indicates whether data differs from its original form but does not specify where
Checksums are calculated using an algorithm and the value is added to the transmission
The receiving device re-calculates the checksum and compares to the original
If the checksums do not match, it is assumed an error has occurred
Page 7 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Worked Example
Describe the process a checksum algorithm uses to determine if an error has occurred
[5]
Answer
Before data is transmitted a checksum value is calculated [1]
The checksum value is transmitted with the data [1]
The receiver calculates the checksum value using the received data [1]
The calculated checksum is compared to the transmitted checksum [1]
If they are the same then there is no error otherwise an error has occurred [1]
Echo Check
What is an echo check?
An echo checks involve transmitting the received data back to the sender
The sender then checks the data to see if any errors occurred during transmission
This method isn’t reliable as an error could have occurred when the sender transmits the data or
when the receiver transmits the data
If an error does occur the sender will retransmit the data
Worked Example
Four 7-bit binary values are transmitted from one computer to another.
A parity bit is added to each binary value creating 8-bit binary values. All the binary values are
transmitted and received correctly.
(a) Identify whether each 8-bit binary value has been sent using odd or even parity by writing odd or
even in the type of parity column.
01100100
10010001
Page 8 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
00000011
[4]
(b) An error may not be detected when using a parity check.
Identify why an error may not be detected.
[1]
Answers
(a)
(b)
Any one from:
there is a transposition of bits [1]
it does not check the order of the bits (just the sum of 1s/0s) [1]
even number of bits change [1]
incorrect bits still add up to correct parity [1]
Page 9 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Check Digits
Your notes
Check Digits
What is a check digit?
A check digit is the last digit included in a code or sequence, used to detect errors in numeric data
entry
Examples of errors that a check digit can help to identify are:
Incorrect digits entered
Omitted or extra digits
Phonetic errors
Added to the end of a numerical sequence they ensure validity of the data
Calculated using standardised algorithms to ensure widespread compatibility
Examples of where check digits can be used include:
ISBN book numbers
Barcodes
Barcodes
Barcodes consist of black and white lines which can be scanned using barcode scanners
Barcode scanners shine a laser on the black and white lines which reflect light into the scanner
The scanner reads the distance between these lines as numbers and can identify the item
Page 10 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Worked Example
Check digit algorithms are used to determine whether an error has occurred in transmitted data.
State the names of two examples of a check digit algorithm.
[2]
Answer
ISBN [1]
Barcode [1]
Page 11 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Worked Example
Explain how Automatic Repeat reQuests (ARQ) are used in data transmission and storage
[2]
Answer
Any two from:
Set of rules for controlling error checking/detection // it’s an error detection method // used to
detect errors
Page 12 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 13 of 13
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 5
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Encryption
Your notes
Encryption
What is encryption?
Encryption is a method of scrambling data before being transmitted across a network
Encryption helps to protect the contents from unauthorised access by making data meaningless
While encryption is important on both wired and wireless networks, it's even more critical on wireless
networks due to the data being transmitted over radio waves, making it easy to intercept
Page 2 of 5
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Page 3 of 5
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Worked Example
Complete the sentences about symmetric encryption. Use the terms from the list. Some of the
terms in the list will not be used. You should only use a term once.
algorithm
Page 4 of 5
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
cipher
copied
delete Your notes
key
plain
private
public
standard
stolen
understood
unreadable
The data before encryption is known as ______ text. To scramble the data, an encryption ______,
which is a type of ______, is used. The data after encryption is known as ______ text. Encryption
prevents the data from being ______ by a hacker.
[5]
Answer
One mark for each correct term in the correct place:
The data before encryption is known as plain text. To scramble the data, an encryption
algorithm/key, which is a type of key/algorithm, is used. The data after encryption is known as cipher
text. Encryption prevents the data from being understood by a hacker.
Page 5 of 5
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 18
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Step Example
Process If the instruction being executed is ADD, the inputted value is added to an existing value
Output The result of the calculation is outputted to the user via the monitor
Page 2 of 18
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
A diagram showing the input, process, output sequence followed by computer systems
Your notes
Page 3 of 18
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Registers
Extremely small, extremely fast memory located in the CPU
Hold small amounts of data needed as part of the fetch-execute cycle
Each register has its own specific purpose
It consists of 5 main registers
The Program Counter (PC)
The Memory Address Register (MAR)
The Memory Data Register (MDR)
The Accumulator (ACC)
Current Instruction Register (CIR)
For each of the registers you must know
The name of the register
Its acronym
The purpose of the register
Page 5 of 18
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Memory Address MAR Holds the memory address of where data or instructions are
Register to be fetched from memory
Memory Data Register MDR Stores the data or instruction which has been fetched from
memory
Current Instruction CIR Stores the instruction the CPU is currently decoding or
Register executing
Accumulator ACC Stores the results of any calculations that have taken place in
the Arithmetic Logic Unit (ALU)
Buses
Components within the CPU and wider computer system are connected by buses
A bus is a set of parallel wires through which data/signals are transmitted from one component to
another
There are 3 types of bus:
Address - unidirectional, carries location data (addresses), data is written to/read from
Data - bidirectional, carries data or instructions
Control - bidirectional, carries commands and control signals to tell components when they
should be receiving reads or writes etc..
Page 6 of 18
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Worked Example
Describe the role of the control unit, the control bus, the data bus and the address bus when
fetching an instruction from memory [4]
Answer
The address of memory (holding instruction) is placed on the address bus (1)
The control unit sends a signal (1) on the control bus (to start a read operation) (1)
The instruction is/the contents of the memory are placed on the data bus (1)
Page 7 of 18
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 8 of 18
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
During the fetch stage of the cycle, the program counter holds the address of the next instruction to
be fetched from memory
The address of the next instruction or data to be fetched is copied into the memory address register
(MAR)
The address of the instruction or data is then sent along the address bus and awaits a signal from the
control bus
The signal sent along the control bus is sent from the control unit (CU) to the main memory
The data or instructions received from main memory is fetched to the memory data register (MDR) via
the data bus
A copy of the instruction or data is stored in the current instruction register (CIR)
The program counter (PC) increments by 1 so it is pointing to the next instruction to be executed
Decode stage
During the decode stage of the cycle, the CPU needs to work out what is required from the
instruction
This is done as the instruction is split into two parts:
Opcode - what the instruction is
Operand - what to do it to
This could be either data or an address where the data is stored
Execute stage
During the execute stage of the cycle, the CPU will carry out the instruction that was fetched
Some examples that would take place at this stage are
Performing a calculation
Storing a result or data back in main memory (RAM)
Going to main memory to fetch data from a different location
Page 9 of 18
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Worked Example
Explain how an instruction is fetched using Von Neumann architecture
[6]
Answer
The Program Counter (PC) holds the address/location of the next instruction to be fetched [1]
The address held in the PC is sent to the Memory Address Register (MAR) [1]
The memory address is sent using the address bus [1]
The Program Counter is incremented [1]
The instruction is sent from the address in memory to the Memory Data Register (MDR) [1]
The instruction is transferred using the data bus [1]
The instruction is sent to the Current Instruction Register (CIR) [1]
Page 10 of 18
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 11 of 18
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Number of cores
A core works like it is its own CPU
Multiple core processors mean they have multiple separate processing units that can fetch, decode
and execute instructions at the same time
For example, a dual-core processor would have 2 processing units, each with their own
Control Unit (CU)
Arithmetic Logic Unit (ALU)
Accumulator (ACC)
Registers
Multi-core processors can run more powerful programs with greater ease
Multiple cores increase the performance of the CPU by working with the clock speed
Example: A quad-core CPU (4 cores), running at a clock speed of 3Ghz
4 cores x 3GHz
4 x 3 billion instructions
12 billion instructions per second
Page 12 of 18
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Worked Example
One computer has a single core processor and the other has a dual core processor.
Explain why having a dual core processor might improve the performance of the computer
[2]
Answer
Any 2 from:
The computer with the dual core processor has two cores/double the amount of cores [1]
Parallel processing can take place [1]
Each core can execute a separate instruction at the same time [1]
Each core can process instructions independently of each other [1]
Page 13 of 18
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Add ADD 10100001 Adds a value to the value currently stored in the accumulator
(ACC)
Subtract SUB 00100010 Subtract a value from the values stored in the accumulator
Load LDA 10111111 Load the value stored in a memory location into the
accumulator
Store STA 01100000 Store the value in the accumulator in a specific location in
memory
Page 14 of 18
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
A program created using one computer’s instruction set would not run on a computer containing a
processor made by a different manufacturer
Your notes
For example, a computer program created using Intel’s instruction set would not run on a device
containing an ARM processor
Worked Example
Using the instruction set in the table above what would be the operation if the instruction was
00100010 00000010?
[1]
Answer
Either of:
The operation would be SUB [1]
If the operand was raw data the complete instruction would be to subtract 2 from the value in
the accumulator [1]
Page 15 of 18
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Embedded Systems
Your notes
Embedded Systems
What is an embedded system?
An embedded system is a computer system which is used to perform a dedicated function, inside a
larger mechanical unit
Examples of embedded systems include
Heating thermostats
Hospital equipment
Washing machines
Dishwashers
Coffee machines
Satellite navigation systems
Factory equipment
Security systems
Traffic lights
Page 16 of 18
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Worked Example
1) Tick two boxes below to show which are an example of an embedded system
[2]
Page 17 of 18
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Washing Machine
Mobile Phone
Laptop
Washing Machine ✓
Mobile Phone
Page 18 of 18
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Input Devices
Your notes
Input Devices
What is an Input Device?
Input devices are hardware components that allow users to interact with a computer system
They enable the user to input data or commands into the system, which the computer then processes
to produce an output
Page 2 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Optical Mouse Moves the cursor on the Computers Precise control and
screen based on hand navigation on a computer
Laptops Your notes
movements over a screen
surface
Page 3 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Output Devices
Your notes
Output Devices
What is an Output device?
Output devices are hardware components that receive information from a computer system and
present it to the user in an understandable form
They enable the computer to communicate the results of processed data or commands
Inkjet printer Prints text and images onto Home Low cost compared
paper by spraying tiny to other types of
droplets of ink Schools printer
Offices
Laser printer Heat from a laser fuses toner Offices High-quality prints
(fine powder) onto paper
Schools Fast print speed
Page 4 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 5 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Is the user comfortable with the device? A touch screen might be more intuitive for some users,
while others might prefer a mouse and keyboard
Environment Your notes
Where will the device be used? A wireless mouse might be suitable for a clutter-free office, while a
wired mouse might be better for a public computer lab to prevent theft
Cost
Higher-end devices often have more features but are also more expensive. Consider the budget
and whether the extra features are worth the cost
Page 6 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Sensors
Your notes
Sensors
Sensors are input devices
They measure a physical property of their environment such as light levels, temperature or movement
Sensors can be used for monitoring systems and control systems
A monitoring system tracks the state of a system, it gathers data and may issue warning
messages
A control system will control the system based upon the input from sensors
For example, if the water temperature in a fish tank fell below the acceptable level, a control
system would start up a heater
The system will then continue to check the water temperature readings (outputs) and when they
are within the acceptable range it will switch off the heater
A process where outputs are recycled and used as inputs, creating a continuous cycle is called a
feedback loop
Accelerometer Acceleration rate, tilt, Detecting sudden changes in vehicle movement and
vibration deploy safety features if needed
In mobile phones to detect orientation of the device
Page 7 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Flow Rate of gas, liquid or powder Detect changes in the flow through pipes in water
flow system
Your notes
Gas Presence of a gas e.g. Detect levels of gas in confined spaces
carbon monoxide
Detect gas levels when fixing gas leaks
Infra-red Detecting motion or a heat Security systems detecting intruders who break the
source beam
Measures heat radiation of objects - used by
emergency services to detect people
Page 8 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Worked Example
What type of sensor would be used to help drivers when reversing? [1]
A Motion
B Infra-red
C Light
D Proximity
A Monitoring
B Control
Answer
A Motion
B Infra-red
C Light
D Proximity
A Monitoring
B Control
Page 9 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 19
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Primary Storage
Your notes
Primary Storage
Primary storage is directly accessed by the CPU
Computer systems need both primary and secondary storage to operate
Both types of storage play a crucial role in the operation of a computer system
A quick comparison of primary and secondary storage shows:
Primary Secondary
RAM
What is RAM?
RAM (Random Access Memory) is primary storage that is directly connected to the CPU and holds the
data and instructions that are currently in use
RAM is volatile which means the contents of RAM are lost when the power is turned off
Page 2 of 19
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
For the CPU to access the data and instructions they must be copied from secondary storage
RAM is very fast working memory, much faster than secondary storage Your notes
RAM is read/write which means data can be read from and written to
In comparison to ROM, it has a much larger capacity
Worked Example
A smart television allows the user to search the Internet and watch videos online.
The smart television uses RAM
Give two examples of data that the smart television could store in RAM [2]
How to answer this question
Think about the main function of a smart television, watch channels, use apps to stream content
and browse the web etc
For each function, try to think of what data would have to be in the RAM whilst you were actually
doing it (in use!)
Possible answers
Current channel being watched
Current volume
Current video/file/tv program being watched
Web browser/applications that are running
Data being downloaded/buffered
Page 3 of 19
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Examiners will accept anything reasonable when answering these style of questions BUT brand
names will not be be awarded without giving an example
Your notes
ROM
What is ROM?
ROM (Read Only Memory) is primary storage that holds the first instructions a computer needs to start
up (Bootstrap)
ROM contains the BIOS (Basic Input Output System)
ROM is a small memory chip located on the computers motherboard
ROM is fast memory, much faster than secondary storage but slower than RAM
ROM is non-volatile which means the contents of ROM are not lost when the power is turned off
ROM is read only which means data can only be read from
In comparison to RAM, it has a much smaller capacity
Worked Example
Quinn has 512 kilobytes of ROM and 16 gigabytes of RAM in her computer
1. Describe the purpose of the ROM in Quinn's computer [2]
2. Describe the purpose of the RAM in Quinn's computer [2]
Answer
1. ROM
Store start-up instructions/bootstrap
Used to start the computer
2. RAM
Stores the parts of the OS / programs that are running
Page 4 of 19
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 5 of 19
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Secondary Storage
Your notes
Secondary Storage
Storage devices are non-volatile secondary storage, that retain digital data within a computer system
They provide a means of storing, accessing, and retrieving data, which can include software
applications, documents, images, videos, and more
There are 3 types of storage:
Magnetic
Solid-state (flash memory)
Optical
Computer systems need both primary and secondary storage to operate
Both types of storage play a crucial role in the operation of a computer system
A quick comparison of primary and secondary storage shows:
Primary Secondary
Page 6 of 19
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Worked Example
A games console has secondary storage.
State, using an example, why the games console needs secondary storage [2]
How to answer this question
They keyword is 'why', why does a games console need secondary storage? give an example,
do not just describe what secondary storage is!
Answer
To store data once the power is turned off / permanently // for non-volatile storage
Examples could include:
Storing games
Save games
User data/profiles
Downloaded content/applications/updates
Magnetic Storage
What is magnetic storage?
Magnetic storage is a type of non-volatile media that uses magnets (polarity) to store binary 0s and 1s
A magnetic hard disk is made up of several metal discs coated with a magnetic material
These are called platters
Iron particles on each platter are magnetised to represent a 0 or 1
Page 7 of 19
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Each platter is divided by concentric circles creating several tracks and wedge shaped sectors
Where they intersect is a track sector
Page 8 of 19
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
The hard drive spins the metal disk(s) at a high speed (typically around 5400-7200 RPM) using a motor
A read/write arm, controlled by an actuator, moves the head over the surface of the disc to the Your notes
location of the data
The data is read/written using electromagnets
Advantages Disadvantages
Capacity - High storage Durability - Moving parts can get damaged if dropped
Cost - Low per gigabyte Portability - Heavy & bulky making them less convenient for
transport
Page 9 of 19
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Solid-state (flash memory) is memory made up of tiny cells that can contain one bit of data (1 or 0)
Each cell contains a transistor that acts as a switch that can be turned on or off Your notes
The transistor contains two main parts:
Control gate - top layer of transistor, connects to circuit and controls if current can flow through
the transistor
Floating gate - can hold a charge (like a tiny rechargeable battery) and is sandwiched between two
layers of insulating material (Oxide)
To store data a charge is placed on the floating gate
A high voltage is applied to the control gate, which allows electrons to be pushed through the
oxide layer and onto the floating gate
To remove data, a high voltage charge is applied in the opposite direction, pulling the electrons off
the floating gate
Advantages Disadvantages
Noise - Silent
Optical Storage
What is optical storage?
Optical storage is a type of non-volatile media that uses lasers to burn the surface of a disk, creating
pits and lands suitable for storing binary 0s and 1s
Examples of optical storage include:
Blu-rays have the largest capacity
CDs have the lowest capacity
Page 10 of 19
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
All optical devices work by shining a laser at the disk and processing the reflection
An arm moves the laser across the surface of the disk
In CD-Rs a laser burns the data, permanently on to the disk, by creating pits and lands
The laser is also used to read the data from the pits and lands
When the laser light hits the point where the pit changes into a land or vice versa the light scatters and
is not reflected back as well.
This is captured by a sensor and can be interpreted as a change in the binary value
Advantages Disadvantages
Noise - Silent
Worked Example
Page 11 of 19
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Zarmeen has purchased a new tablet computer. The tablet has an internal secondary storage
device.
Your notes
The storage device is a solid state device.
1. Give three benefits of the tablet having a solid state device instead of a magnetic device [3]
2. Give two drawbacks of the tablet having a solid state device instead of a magnetic device [2]
Answers
Benefits
Faster access / read/write speeds
Smaller in physical size
More durable // no moving parts
Drawbacks
More expensive (per gigabyte)
Smaller capacity (usually)
Limited number of read/write cycles
Guidance
Portable is not enough on it's own
No moving parts is not enough on it's own
Page 12 of 19
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Virtual Memory
Your notes
Virtual Memory
What is virtual memory?
Example
Page 13 of 19
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
In the example above, the computer is turned on and the elements of the operating system are loaded
into RAM
Your notes
The user opens some spreadsheet and video editing software but RAM is full
The program not currently being used (video editing) is transferred to virtual memory
When the user wants to use the video editing software again, it is transferred back from virtual memory
to RAM
Case Study
A student uses software to create 3D models.
3D modelling often means processing large amounts of data
This takes up a large amount of RAM
If there is not enough physical RAM, virtual memory is used to:
Extend the RAMs capacity
Ensure the software does not freeze/crash when RAM gets full
Worked Example
A computer only has 4GB of RAM, Fynn says that virtual memory can be used instead of adding more
RAM.
1. Explain how virtual memory can compensate for the lack of RAM in Fynn's computer [3]
2. Explain why it would be beneficial for Fynn to get more RAM instead of relying on virtual memory
[2]
How to answer these questions
1. What is the definition of virtual memory? how does it work?
Page 14 of 19
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
2. What is the downside of using virtual memory? turn this into an advantage of adding more RAM
Answers
Your notes
How can Virtual Memory compensate
Virtual Memory is used when RAM is full
...part of the secondary storage used as (temporary) RAM
Data from RAM is moved to the secondary storage/Virtual Memory (to make space in RAM)
RAM can then be filled with new data
When data in Virtual Memory is needed it is moved back to RAM
Benefit of more RAM
More RAM will improve the performance of the computer // More RAM will speed up the
access to data
Virtual Memory is slower to access than RAM direct (because it has to go back to RAM first)
Moving data between RAM and VM takes processor time
Page 15 of 19
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Cloud Storage
Your notes
Cloud Storage
What is cloud storage?
Cloud storage is a term to describe long-term (secondary) storage of data that resides in a remote
location, accessible only via a wide area network (Internet)
Data is stored on remote servers, typically using magnetic storage (HDD), but increasingly using solid
state (SSD)
Advantages Disadvantages
Reliability - Access data anywhere, any time, from any Cost - Typically a monthly/yearly
device subscription plan
Page 16 of 19
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Benefit Explanation
Scalability Cloud storage providers allow customers to increase or decrease their storage
capacity as needed
Page 17 of 19
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Reliability Cloud storage providers often use multiple servers to store and backup data,
reducing the risk of data loss due to hardware failure
Your notes
Security Cloud storage providers offer advanced security features, such as data encryption
and multi-factor authentication multi-factor authentication, to protect user data
from unauthorised access
There is no need to hire specialist staff as IT services being provided by the cloud
storage provider
Worked Example
A school currently stores all of their data on local servers. They are considering upgrading their
system to utilise cloud storage.
Explain two disadvantages to the school of storing their data in the cloud.
[4]
You need a constant internet connection [1]
if the internet connection failed, teachers would not be able to access lesson files [1]
if the internet connection failed, teachers would not be able to access student data/take
electronic registers [1]
Page 18 of 19
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
if the internet connection failed, students would not be able to access their work/coursework [1]
Reliant on third party to carry out security procedures [1]
but the school is still legally responsible if data is accessed by unauthorised people [1] Your notes
Data stored on the cloud could be hacked or intercepted [1]
Explain two advantages to the school of storing their data in the cloud.
[4]
Additional storage can be purchased if needed [1]
The cloud hosting company provides back up [1]
The cloud hosting company provides security [1]
Data can be accessed from anywhere and from any device provided there is an internet
connection [1]
So teachers would be able to access data from home [1]
So students would be able to access work from home [1]
Page 19 of 19
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 8
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 2 of 8
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Page 3 of 8
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
MAC Addresses
What is a MAC address?
A MAC (Media Access Control) address is a unique identifier given to devices which communicate over
a local area network (LAN)
A network interface card is given a MAC address at the point of manufacture
MAC addresses are static, meaning they can never change
MAC addresses make it possible for switches to efficiently forward data to the intended recipient
Any device that contains a Network Interface Card (NIC) has a MAC address assigned during
manufacturing
A device connecting to a local network already has a MAC address, if it moves to a different network
then the MAC address will stay the same
A MAC address is represented as 12 hexadecimal digits (48 bits), usually grouped in pairs
The first three pairs are the manufacturer ID number (OUI) and the last three pairs are the serial number
of the network interface card (NIC)
There are enough unique MAC addresses for roughly 281 trillion devices
Page 4 of 8
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
IP Addresses
Your notes
What is an IP address?
An IP (Internet Protocol) address is a unique identifier given to devices which communicate over the
Internet (WAN)
IP addresses can be static, meaning they stay the same or dynamic, meaning they can change
IP addresses make it possible to deliver data to the right device
A device connecting to a network will be given an IP address, if it moves to a different network then the
IP address will change
IPv4
Internet Protocol version 4 is represented as 4 blocks of denary numbers between 0 and 255,
separated by full stops
Each block is one byte (8 bits), each address is 4 bytes (32 bits)
IPv4 provides over 4 billion unique addresses (232), however, with over 7 billion people and countless
devices per person, a solution was needed
IPv6
Internet Protocol version 6 is represented as 8 blocks of 4 hexadecimal digits, separated by colons
Each block is 2 bytes (16 bits), each address is 16 bytes (128 bits)
Page 5 of 8
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
IPv6 could provide over one billion unique addresses for every person on the planet (2128)
Worked Example
Computers in a network can be identified using both IP addresses and MAC addresses.
Describe two differences between IP addresses and MAC addresses [2]
Answer
IP address is dynamic/can change // MAC address is static/cannot change
IP address is used to communicate on a WAN/Internet // MAC address is used to communicate
on a LAN
Page 6 of 8
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Router
Your notes
Router
What is a router?
The router is responsible for routing data packets between different networks
An example of data the router can direct is, sending internet traffic to the correct destination/devices
in your home network
The router connects networks together, local area networks (LAN) to the wider internet which is a type
of wide area network (WAN)
The router can manage and prioritise data traffic, which can help to keep connections stable
The router will assign IP addresses to the devices on the network
Image of a router
Page 7 of 8
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Worked Example
State 3 tasks carried out by a router [3]
To answer the question you must simply identify 3 tasks a router does
1 mark each to max 3 e.g.
Send and Receive packets of data
Connect a local network to the internet
Assign IP addresses to nodes/devices
Converts packets from one protocol to another
Page 8 of 8
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 15
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Utility software
Utility software is software designed to help maintain, enhance and troubleshoot/repair a computer
system
Designed to perform a limited number of tasks
Page 2 of 15
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Interacts with the computers hardware, for example, secondary storage devices
Some utility software comes installed with the operating system Your notes
Examples of utility software and their function are:
Defragmentation (maintain)
Compression (enhance)
Encryption (enhance)
Task manager (troubleshoot/repair)
What is application software?
Application software (abbreviated 'apps') is software chosen by a user to help them carry out a
specific task
Installed on top of system software and is user chosen to best suit induvial requirements
Common categories of application software include:
Productivity - get things done efficiently (word processors, spreadsheets & presentation)
Communication - stay connected (email, browser, messaging)
Entertainment - Watch movies, play games or listen to music
Page 3 of 15
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
File Management
What is file management?
File management is a process carried out by the operating system creating, organising, manipulating
and accessing files and folders on a computer system
The OS manages where data is stored in both primary and secondary storage
File management gives the user the ability to:
Create files/folders
Name files/folders
Rename files/folders
Copy files/folders
Move files/folders
Delete files/folders
The OS allows users to control who can access, modify and delete files/folders (permissions)
The OS provides a search facility to find specific files based on various criteria
Handling Interrupts
What is interrupt handling?
Interrupt events require the immediate attention of the central processing unit
Page 4 of 15
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
In order to maintain the smooth running of the system, interrupts need to be handled and processed in
a timely manner
Your notes
For example, if a user clicks cancel on a file conversion process, a signal is sent from the mouse,
interrupts the processor, and the operating system will trigger the cancellation routine
User Interface
What is a user interface?
A user interface is how the user interacts with the operating system
Examples of user interfaces include:
Command Line Interface (CLI)
Graphical User Interface (GUI)
Menu
Natural language (NLI)
Page 5 of 15
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
A Graphical User Interface (GUI) requires users to interact with the operating system using visual
elements such as windows, icons, menus & pointers (WIMP)
Your notes
GUIs are optimised for mouse and touch gesture input
Examples of GUIs are Windows, Android and MAC OS
Page 6 of 15
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Natural language Can be used by people with disabilities Not always reliable
(NLI)
Intuitive Privacy concerns
Page 7 of 15
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
The OS is responsible for copying programs and data from secondary to primary storage as it is
needed
Your notes
Programs and data require different amounts of RAM to operate efficiently and the OS manages this
process
RAM is allocated based on priority and fairness, for example, system applications (essential) may have
a higher priority than user applications
The OS dynamically manages the memory, adjusting allocation as needed to maintain optimal system
performance
Memory management makes multitasking possible
What is multitasking?
Multitasking is a process made possible by the OS simultaneously managing system resources
(memory, CPU etc) to give a user the perception of being able to use multiple programs at the same
time
The OS splits tasks and allocates system resources based on a priority
The CPU can only execute one instruction at a time, it can can execute billions of them in one second.
This makes it appear that multiple programs are running at the same time
Page 8 of 15
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Page 9 of 15
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
System accounts can also be restricted from performing certain actions, e.g. editing network settings,
installing unapproved software, changing the account settings of other users
Your notes
User Management
What is user management?
User management is a process carried out by the operating system enabling different users to log onto
a computer
The OS is able to maintain settings for individual users, such as desktop backgrounds, icons and colour
schemes
A system administrator is able to allocate different access rights for different users on a network
Worked Example
Ella uses her computer to create artwork for a magazine
Ella makes use of system software.
One type of system software is the operating system.
Identify and describe two functions of an operating system [6]
How to answer this question
Break down the 6 marks, 1 mark each for identifying a function of the operating system. For each
function you need to make 2 points about how they work
Answer
Memory management
Allocates memory to programs currently in use
Gets data from RAM
Stores data in RAM
File management
Creating/editing/renaming files
Creating/editing/renaming folders
Movement of files/folders
Page 10 of 15
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 11 of 15
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
What is firmware?
Firmware is embedded directly in to the hardware of a device, to make them function
When a computer is turned on, it has to explore the ROM for its initial boot-up instructions, these are
contained in a Bootstrap loader
The initial process is handled by the basic input/output system (BIOS) which is known as firmware
Once start-up is complete, instructions are sent to RAM to be processed by the operating system
Page 12 of 15
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
This layer ensures that hardware devices e.g. keyboard and mouse are available and can be
communicated directly by the operating system
Your notes
Firmware translates between the hardware and the software
Page 13 of 15
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Interrupts
Your notes
Interrupts
What is an interrupt?
An interrupt is a signal for the CPU to stop what it is currently doing and do something else as a higher
priority
The CPU is in a continuous loop of carrying out the fetch-decode-execute cycle, however there are
occasions when this needs to be interrupted
Page 14 of 15
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Worked Example
Describe the purpose of an interrupt in a computer system
[4]
Answer
Four from:
Used to attend to certain tasks/issues
Used to make sure that vital tasks are dealt with immediately
The interrupt/signal tells the CPU/processor (that its attention is required)
A signal that can be sent from a device (attached to the computer)
A signal that can be sent from software (installed on the computer)
The interrupt will cause the OS/current process to pause
The OS/CPU/ISR will service/handle the interrupt
They have different levels of priority
After the interrupt is serviced, the (previous) process is continued
It enables multi-tasking to be carried out on a computer
A valid example of an interrupt e.g. ‘out of paper’ message for a printer
Page 15 of 15
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 10
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Low-Level Languages
What is a low-level language?
A low-level language is a programming language that directly translates to machine code understood
by the processor
Low-level languages allow direct control over hardware components such as memory and registers
These languages are written for specific processors to ensure they embed the correct machine
architecture
First generation
Machine code is a first-generation language
Instructions are directly executable by the processor
Written in binary code
Second generation
Page 2 of 10
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Advantages Disadvantages
High-Level Languages
What is a high-level language?
A high-level programming language uses English-like statements to allow users to program with easy
to use code
High-level languages allow for clear debugging and once programs are created they are easier to
maintain
High level languages were needed due to the development of processor speeds and the increase in
memory capacity
One instruction translates into many machine code instructions
Needs to be translated into machine code for the computer to be able to execute it
Examples of high-level languages include:
Python
Java
Page 3 of 10
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Basic
C+ Your notes
Advantages Disadvantages
Easier to read and write The user is not able to directly manipulate the
hardware
Portable so can be used on any computer The program may be less efficient
Page 4 of 10
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Assembly Language
Your notes
Assembly Language
What is assembly language?
Assembly language is a second generation, low-level language designed to simplify the writing of
machine code instructions for programmers
Programmers use assembly language for the following reasons:
Need to make use of specific hardware or parts of the hardware
To complete specific machine dependent instructions
To ensure that too much space is not taken up in RAM
To ensure code can completed much faster
Assembly languages allow programmers to program with mnemonics. e.g.
LDA Load - this will ensure a value is added to the accumulator
ADD Addition - this will add the value input or loaded from memory to the value in the accumulator
STO, Store - stores the value in the accumulator in RAM
Assembly language allowed continuation of working directly with the hardware but removed an
element of complexity
A mnemonic is received by the computer and it is looked up within a specific table
An assembler is needed to check the word so that it can be converted into machine code
If a match from the word is found e.g. STO the word is replaced with the relevant binary code to match
that sequence
Worked Example
Complete the table to identify whether each example of computer code is High-level, Assembly
language or Machine code
10110111
Page 5 of 10
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
00110110
11100110 Your notes
FOR X = 1 to 10
PRINT x
NEXT X
INP X
STA X
LDA Y
[3]
Answer
10110111 X
00110110
11100110
FOR X = 1 to 10 X
PRINT x
NEXT X
INP X X
STA X
LDA Y
Page 6 of 10
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
What is a compiler?
A compiler translates high-level languages into machine code all in one go
Compilers are generally used when a program is finished and has been checked for syntax errors
Compiled code can be distributed (creates an executable) and run without the need for translation
software
If compiled code contains any errors, after fixing, it will need re-compiling
Advantages Disadvantages
Original source code will not be seen Changes mean it must be recompiled
What is an interpreter?
An interpreter translates high-level languages into machine code one line at a time
Each line is executed after translation and if any errors are found, the process stops
Interpreters are generally used when a program is being written in the development stage
Interpreted code is more difficult to distribute as translation software is needed for it to run
Page 7 of 10
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Advantages Disadvantages
Your notes
Stops when it finds a specific syntax error in the Slower execution
code
Worked Example
A computer program is written in a high-level programming language.
(a) State why the computer needs to translate the code before it is executed.[1]
(b) Either a compiler or an interpreter can translate the code. Describe two differences between
how a compiler and an interpreter would translate the code.[2]
How to answer this question
(a) what time of language does a computer understand?
(b) the keyword is 'how'
Answer
(a)
To convert it to binary/machine code
The processor can only understand machine code
(b)
Compiler translates all the code in one go...
...whereas an interpreter translates one line at a time
Compiler creates an executable...
...whereas an interpreter does not/executes one line at a time
Compiler reports an error at the end...
...whereas an interpreter stops when it finds an error
Page 8 of 10
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Editor
An editor gives users an environment to write, edit and maintain high-level code
Editors can provide:
Basic code formatting tools - changing the font, size of the font and making text bold etc
Prettyprint - using colour to make it easier to identify keywords, for example 'print', 'input' and 'if' in
Python
Code editing - auto-completion and auto-correction of code, bracket matching and syntax
checks
Commenting code - allows sections of code to be commented out easily to stop it from being run
or as comments on what the program is doing
Error-diagnostics
Page 9 of 10
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Tools that help to identify, understand and fix errors in code, such as:
Identifying errors - highlight particular areas of code or provide direct error messages where the
error may have appeared e.g. indentation errors etc
Debugger - provide a 'step through' command which provides step by step instructions and
shows what is happening to the code line by line, useful for finding logic errors
Run-time environment
Gives users the ability to run and see the corresponding output of a high-level language
Translator
Built in to compile or interpret code without the need for an extra piece of software
Page 10 of 10
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 10
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 2 of 10
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Network Protocols
Your notes
HTTP & HTTPS
What is HTTP & HTTPS?
Hypertext Transfer Protocol (HTTP) allows communication between clients and servers for website
viewing
HTTP & HTTPS are protocols, a set of rules governing communication between devices on a network
HTTP allows clients to receive data from the sever (fetching a webpage) and send data to the server
(submitting a form, uploading a file)
HTTPS works in the same way as HTTP but with an added layer of security
All data sent and received using HTTPS is encrypted
HTTPS is used to protect sensitive information such as passwords, financial information and personal
data
Page 3 of 10
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Web Browser
Your notes
Web Browser
What is a web browser?
A web browser is a piece of software used to access and display information on the internet
A web browser displays web pages by rendering hypertext markup language (HTML)
Web browsers interpret the code in HTML documents and translate it into a visual display for the user
Provide navigation tools E.g. back/forward buttons and home button, to help users move between
pages
Storing bookmarks & Allow users to save links to frequently visited websites and access them
favourites easily
Record user history Allow users to quickly revisit recently viewed web pages
Provide address bar A place for user to type in the URL (link to URL page) of a web page to visit
Multiple tabs Allow multiple web pages to be open at once so users can quickly switch
between them
Page 4 of 10
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Web Pages
Your notes
Loading a Web Page
How is a web page loaded?
Web pages are held on web servers (1), known as 'hosting'
To access a web page on a web server, a web browser is used
In the browser, a user enters a web page URL (2)
The browser sends the domain name to a DNS (3)
The browser connects to the web server and requests to access the page
HTML (4) is transferred and rendered by the browser, displaying the web page
Uniform Resource
Locator (URL) (2)
What is a URL?
A Uniform Resource Locator (URL) is a unique identifier for a web page, known as the website address
It is text based to make it easier to remember
A user enters a URL into a web browser to view a web page
An example of a URL is:
https://www.savemyexams.com/igcse/computer-science/cie/23/revision-notes/
A URL can typically be split into three parts:
Protocol
Page 5 of 10
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Domain name
Web page/file name Your notes
Using the example about the URL would be split as follows:
Protocol https Communication method to transfer data
between client and server
HTML (4)
What is HTML?
Hypertext Markup Language (HTML), is the foundational language used to structure and present
content on the web
HTML consists of a series of elements, often referred to as "tags"
Most tags are opened and closed e.g. <html> and </html>, whereas some tags are only opened e.g.
<img> and <link>
Structure
HTML is used to define the basic structure of a webpage by organising content into sections such as
headers, paragraphs, and footers
Page 6 of 10
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
The <html> tag is the root element of an HTML page and includes all other HTML elements used to
create a page structure
<!DOCTYPE html> Your notes
<html>
<head>
<title>My Web Page</title>
</head>
<body>
<header>
<h1>Welcome to My Website</h1>
</header>
<main>
<section>
<h2>About Me</h2>
<p>This is a paragraph about me.</p>
</section>
<section>
<h2>My Projects</h2>
<p>This is a paragraph about my projects.</p>
</section>
</main>
<footer>
<p>Contact: myemail@example.com</p>
</footer>
</body>
</html>
In this example, HTML is used to create a structure with a header, two sections in the main body, and a
footer
Other examples of HTML being used for structure include:
Creating lists to structure information
Positioning of text on the screen
Embedding media and interactive elements
Present
HTML is also used to present and display information in a visually meaningful way
The content layer of a web page is made up of HTML elements such as headings (<h1>, <h2>, etc.),
paragraphs (<p>), links (<a>), images (<img>), and more
This layer is mainly handled by CSS (Cascading Style Sheets)
<!DOCTYPE html>
<html>
<body>
<h1>Welcome to My Website</h1>
Page 7 of 10
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
<h2>Subheading 2</h2>
<p>Another section with more information.</p>
In this example, headings (<h1>, <h2>) and text formatting tags (<strong>, <em>) are used to present the
content clearly and with emphasis
Other examples of HTML being used to present information include:
Presenting data in a table
Displaying images with captions
Worked Example
A company sells products over the Internet.
Explain how the information stored on the company’s website is requested by the customer, sent to
the customer’s computer and displayed on the screen.
[7]
Answer
Seven from:
Requested
a web browser is used
user enters the URL / web address (into the address bar) // clicks a link containing the web
address // clicks an element of the webpage
the URL / web address specifies the protocol
protocols used are Hyper Text Transfer Protocol (HTTP) / Hyper Text Transfer Protocol Secure
(HTTPS)
Sent
the URL / web address contains the domain name
the domain name is used to look up the IP address of the company
the domain name server (DNS) stores an index of domain names and IP addresses
Page 8 of 10
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 9 of 10
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Cookies
Your notes
Cookies
What is a cookie?
A cookie is a tiny data file stored on a computer by browser software that holds information relating to
your browsing activity
Typically a cookie will contain:
Browsing history - what websites you have visited
Login information - usernames & passwords
Preferences - language/font size/themes
The two types of cookie are:
Session - Created and replaced every time a user visits a website
Persistent - Created and saved the first time a user visits a website, retained until they expire
Page 10 of 10
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 3
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Digital Currency
Your notes
Digital Currency
What is digital currency?
Digital currency is one that only exists in digital form
Currency is stored in digital wallets or accounts, there is no physical bank notes or coins
It can be exchanged online to pay for goods and services or for transferring money internationally
Unlike traditional currencies, digital currency is not controlled or monitored by central banks or
government (decentralised)
This can make digital currencies highly volatile, their value can fluctuate rapidly in a short period of time
Digital currency investment can be risky due the volatility
Digital currency can also be known as crypto currency
All transactions made using crypto currency are publicly available and tracked using cryptography
Examples include
Bitcoin
Ethereum
Blockchain
What is a blockchain?
A blockchain is a digital ledger that records every transaction made with a particular digital currency
Transactions are time-stamped and added to the blockchain in a permanent and unalterable way
A blockchain is a decentralised technology, meaning that it is not controlled by a single entity or
authority
Page 2 of 3
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Instead, every participant in the network has a copy of the ledger and can verify the transactions
independently
The blockchain is made up of "blocks" of transactions that are linked together in a "chain" using Your notes
cryptographic algorithms
This creates a secure and tamper-proof record of every transaction made with the digital
currency
Each transaction in the blockchain must be verified by multiple participants in the network
This verification process ensures that the transaction is legitimate and prevents any fraudulent
activity
Page 3 of 3
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 14
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 2 of 14
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Data interception
Your notes
What is data interception & theft?
Data interception and theft is when thieves or hackers can compromise usernames and passwords as
well as other sensitive data
This is done by using devices such as a packet sniffer
A packet sniffer will be able to collect the data that is being transferred on a network
A thief can use this data to gain unauthorised access to websites, companies and more
DDoS Attack
What is a DDoS attack?
A Distributed Denial of Service Attack (DDoS attack) is a large scale, coordinated attack designed to
slow down a server to the point of it becoming unusable
A server is continually flooded with requests from multiple distributed devices preventing genuine
users from accessing or using a service
A DDoS attack uses computers as 'bots', the bots act as automated tools under the attackers control,
making it difficult to trace back to the original source
A DDoS attack can result in companies losing money and not being able to carry out their daily duties
A DDoS attack can cause damage to a company's reputation
Hacking
What is hacking?
Hacking is the process of identifying and exploiting weaknesses in a computer system or network to
gain unauthorised access
Access can be for various malicious purposes, such as stealing data, installing malware, or disrupting
operations
Hackers seek out opportunities that make this possible, this includes:
Unpatched software
Out-of-date anti-malware
Malware
Page 3 of 14
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
What is malware?
Malware (malicious software) is the term used for any software that has been created with malicious Your notes
intent to cause harm to a computer system
Examples of issues caused by malware include
Files being deleted, corrupted or encrypted
Internet connection becoming slow or unusable
Computer crashing or shutting down
There are various types of malware and each has slightly different issues which they cause
Virus Contains code that will replicate and cause unwanted and unexpected events to
occur
Examples of issues a user may experience are
Corrupt files
Delete data
Prevent applications from running correctly
Worms Very similar to viruses, main difference being that they spread to other drives and
computers on the network
Worms can infect other computers from
Infected websites
Instant message services
Email
Network connection
Page 4 of 14
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Embedded into other software such as games or programs that have been
downloaded from illegitimate sources
Your notes
Can record your screen, log your keystrokes to gain access to passwords and more
Ransomware Locks your computer or device and encrypts your documents and other important
files
A demand is made for money to receive the password that will allow the user to
decrypt the files
No guarantee paying the ransom will result in the user getting their data back
Pharming
What is pharming?
Pharming is typing a website address into a browser and it being redirected to a 'fake' website in
order to trick a user into typing in sensitive information such as passwords
An attacker attempts to alter DNS settings, the directory of websites and their matching IP addresses
that is used to access websites on the internet or change a users browser settings
A user clicks a link which downloads malware
The user types in a web address which is then redirected to the fake website
Page 5 of 14
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Phishing
What is phishing?
Phishing is the process of sending fraudulent emails/SMS to a large number of people, claiming to be
from a reputable company or trusted source
Phishing is an attempt to try and gain access to your details, often by coaxing the user to click on a
login button/link
Social Engineering
What is social engineering?
Social engineering is exploiting weaknesses in a computer system by targeting the people that use or
have access to them
There are many forms of social engineering, some examples include
Fraudulent phone calls: pretending to be someone else to gain access to their account or their
details
Page 6 of 14
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Pretexting: A scammer will send a fake text message, pretending to be from the government or
human resources of a company, this scam is used to trick an individual into giving out confidential
data Your notes
People are seen as the weak point in a system because human errors can lead to significant issues,
some of which include:
Not locking doors to computer/server rooms
Not logging their device when they're not using it
Sharing passwords
Not encrypting data
Not keeping operating systems or anti-malware software up to date
Worked Example
A company is concerned about a distributed denial of service (DDoS) attack.
(i) Describe what is meant by a DDoS attack.
[4]
(ii) Suggest one security device that can be used to help prevent a DDoS attack.[1]
Answers
(i) Any four from:
multiple computers are used as bots
designed to deny people access to a website
a large number / numerous requests are sent (to a server) …
… all at the same time
the server is unable to respond / struggles to respond to all the requests
the server fails / times out as a result.
(ii)
firewall OR proxy server
Page 7 of 14
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Anti Malware
What is anti-malware software?
Anti-malware software is a term used to describe a combination of different software to prevent
computers from being susceptible to viruses and other malicious software
The different software anti-malware includes are
Anti-virus
Anti-spam
Anti-spyware
Page 8 of 14
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Anti-malware software has a list of known malware signatures to block immediately if they try to
access your device in any way
Your notes
Anti-malware will also perform checks for updates to ensure the database of known issues is up to
date
Authentication
What is authentication?
Authentication is the process of ensuring that a system is secure by asking the user to complete tasks
to prove they are an authorised user of the system
Authentication is done because bots can submit data in online forms
Authentication can be done in several ways, these include
Usernames and passwords
Multi-factor authentication
CAPTCHA - see example below
Page 9 of 14
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Page 10 of 14
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Communication
What is communication?
One way of protecting data is by monitoring digital communication to check for errors in the spelling
and grammar or tone of the communication
Phishing scams often involve communication with users, monitoring it can be effective as:
Rushed - emails and texts pretending to be from a reputable company are focused on quantity
rather than quality and often contain basic spelling and grammar errors
Urgency - emails using a tone that creates panic or makes a user feel rushed is often a sign that
something is suspicious
Professionalism - emails from reputable companies should have flawless spelling and grammar
URL
How to check a URL?
Checking the URL attached to a link is another way to prevent phishing attacks
Page 11 of 14
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Hackers often use fake URLs to trick users into visiting fraudulent websites
e.g. http://amaz.on.co.uk/ rather than http://amazon.co.uk/ Your notes
If you are unsure, always check the website URL before clicking any links contained in an email
Firewalls
What is a firewall?
A firewall monitors incoming and outgoing network traffic and uses a set of rules to determine which
traffic to allow
A firewall prevents unwanted traffic from entering a network by filtering requests to ensure they are
legitimate
It can be both hardware and software and they are often used together to provide stronger security to
a network
Hardware firewalls will protect the whole network and prevent unauthorised traffic
Software firewalls will protect the individual devices on the network, monitoring the data going to
and from each computer
Privacy Settings
What are privacy settings?
Privacy settings are used to control the amount of personal information that is shared online
They are an important measure to prevent identity theft and other forms of online fraud
Users should regularly review their privacy settings and adjust them as needed
Proxy Servers
What is a proxy server?
A proxy-server is used to hide a user's IP address and location, making it more difficult for hackers to
track them
Page 12 of 14
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
They act as a firewall and can also be used to filter web traffic by setting criteria for traffic
Malicious content is blocked and a warning message can be sent to the user Your notes
Proxy-servers are a useful security measure for protecting against external security threats as it can
direct traffic away from the server
SSL
What is SSL?
Secure Socket Layer (SSL) is a security protocol which is used to encrypt data transmitted over the
internet
This helps to prevent eavesdropping and other forms of interception
SSL is widely used to protect online transactions, such as those involving credit card information or
other sensitive data
It works by sending a digital certificate to the user’s browser
This contains the public key which can be used for authentication
Once the certificate is authenticated, the transaction will begin
Worked Example
(i) ) Identify a security solution that could be used to protect a computer from a computer virus,
hacking and spyware.
Each security solution must be different
Phishing
DDoS attack
Hacking
[3]
(ii) Describe how each security solution you identified in (i) will help protect the computer.
[6]
Answers
Page 13 of 14
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
(i)
Hacking Firewall/Biometrics
Page 14 of 14
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 4
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Automated Systems
Your notes
Automated Systems
What is an automated system?
An automated system is a computer system that collects information and can react and perform tasks
based on the data
Automated systems are made using three components:
Sensors
Microprocessors
Actuators
A sensor collects information (link here to 3 Sensors) and provides the microprocessor with it as an
input
A microprocessor processes the information and makes decisions based on pre-programmed rules
An actuator makes physical changes based on instructions given by the microprocessor (outputs)
Examples of physical changes include:
Opening/closing a door/valve
Activating an alarm
Advantages Disadvantages
Safer - keeps humans away from hazardous Security - open to cyber attacks
environments
Page 2 of 4
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Efficient - materials and resources Flexibility - will only react to programmed scenarios
Your notes
Consistent - results are repeatable Maintenance - needs to be well maintained
There are also scenarios where specific advantages and disadvantages are important such as:
Transport Less accidents & traffic congestion Transportation drivers lose jobs
Increased logistical efficiency Technology reliability
Agriculture Less manual labour High start-up costs for equipment and
sensors
Increased crop yield & resource
management
Page 3 of 4
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Worked Example
A theme park has a game where a player tries to run from the start to the finish without getting wet.
The system for the game uses sensors and a microprocessor to spray water at a player as they run
past each sensor.
Describe how the sensors and the microprocessor are used in this system
[8]
Answer
A motion sensor collects data [1]
This data is converted to digital using ADC [1]
The sensor sends data to the microprocessor... [1]
... where the data is compared to stored data [1]
If the value is outside range, water will be sprayed [1]
A signal is sent to the actuator to spray water [1]
If the value is within range no action is taken [1]
This runs in a continuous loop [1]
Page 4 of 4
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 4
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Robotics
Your notes
Robotics
What is robotics?
Robotics is the principle of a robot carrying out a task by following a precise set of programmed
instructions
Robots can be categorised into two groups:
Repeat the same programmed instructions over and Carries out more complex tasks and can adapt
over again (no AI) and learn (AI)
The development of artificial intelligence, including the increased use of machine learning and robotics
raises ethical and legal issues such as:
Accountability
Safety
Algorithmic bias
Legal liability
Characteristics of a Robot
What are the characteristics of a robot?
Robots share three common characteristics:
Mechanical structure
Electrical components
Programmable
Page 2 of 4
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
A physical body that can move and Sensors, microprocessors Designed to follow a precise
interact with the environment and actuators set of instructions
Your notes
Industry Quality Advanced vision to inspect May not work on defects that
inspector products for defaults, might require human judgement
improving quality control
Agriculture Planting & Precise planting (optimum High upfront costs, may struggle
seeding depths and distances) with uneven terrain and changing
machine weather conditions
Domestic Sous chef Assists with meal prep by Limited ability and capabilities
doing basic duties (chopping,
measuring and following basic
recipes)
Worked Example
Page 3 of 4
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
A company uses robots in its factory to manufacture restaurant tables and chairs
(i) One characteristic of a robot is that they contain electrical components. Your notes
State two other characteristics of a robot.
[2]
(ii) Give two advantages to company employees of using robots to manufacture tables and chairs.
[2]
(ii) Give one disadvantage to the company’s owners of using robots to manufacture table and chairs
[1]
Answers
(i)
Mechanical structure
Programmable
(ii)
Employees don't need to lift heavy items
Employees can be protected from dangerous tasks
Employees can utilise their skills in other tasks
Employees don’t need to perform repetitive/mundane tasks
(iii)
Expensive to install/purchase/setup
High ongoing costs/maintenance costs
May deskill the workforce
If they malfunction, production may stop
Page 4 of 4
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 4
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Characteristics of AI
AI shares three common characteristics:
Collection of data
Rules for using data
Ability to reason
Page 2 of 4
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Expert systems
What is an expert system?
An expert system mimics human knowledge and experience and uses a combination of the two to
solve problems or answer questions
Examples of expert systems include:
Equipment troubleshooting and repair
Technical support
Medical diagnosis system
Expert systems share four key characteristics
A database of facts to A set of rules or logic that A program that applies A way for users to
generate rules that are is used to apply the the rules in the rule base interact with the
used to solve problems knowledge in the to the facts in the system and
and make decisions knowledge base to knowledge base to solve provide input
specific problems problems
Page 3 of 4
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Unbiased
Machine Learning
What is machine learning?
Machine learning is one method that can help to achieve an artificial intelligence (AI)
By giving a machine data so that it can 'learn over time' it helps towards training a machine or software
to perform a task and improve its accuracy and efficiency
Uses algorithms to analyse data and identify patterns or relationships
Worked Example
Describe the characteristics of AI
[3]
Answer
Any three from:
Collects data
Stores rules for using the data
The ability to reason
The ability to learn // uses machine learning
… by adapting what it does
… for example, from mistakes to not make them again // result from previous decisions impacts
future
… by changing its own rules
…by changing its own data
…by being trained
Makes one or more predictions (to make a decision)
Find/analyse patterns
Page 4 of 4
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 5
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 2 of 5
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Page 3 of 5
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Core functionality
Using abstraction helps to identify the fundamental components of what the program is going to
solve
Before tackling a problem, it needs to be clearly understood by everyone working on it
The overall goal of the solution needs to be agreed as well as any constraints such as limited resources
or requiring a platform specific solution
Requirements
To create a solution, a requirements document is created to define the problem and break it down into
clear, manageable, understandable parts by using abstraction and decomposition
A requirements document labels each requirement, gives it a description as well as success criteria
which state how we know when the requirement has been achieved
Design
What is the design stage of the program development life
cycle?
Page 4 of 5
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
The design stage of the program development life cycle involves using techniques to come up with a
blueprint for a solution
Your notes
Ways the design of a solution to a problem can be presented include:
Structure diagrams
Flowchart
Pseudocode
Coding
What is the coding stage of the program development life
cycle?
Developers begin programming modules in a suitable programming language that works together to
provide an overall solution to the problem
As each developer programs, they perform iterative testing
Iterative testing is where each module is tested and debugged thoroughly to make sure it interacts
correctly with other modules and accepts data without crashing or causing any errors
Developers may need to retest modules as new modules are created and changed to make sure they
continue to interact correctly and do not cause errors
Testing
What is the testing stage of the program development life
cycle?
Once the overall program or set of programs is created, they are run many times using varying sets of
test data
This ensures the program or programs work as intended as outlined in the initial requirements
specification and design and rejects any invalid data that is input
Examples of test data include alphanumeric sequences to test password validation routines
Page 5 of 5
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 5
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Computer Sub-Systems
Your notes
Computer Sub-Systems
What is a sub-system?
A sub-system is a smaller part of a computer system that works together with other sub-systems to
create fully functional computer system
A car is a great example of using sub-systems
A car will only function if its sub-systems all work together, they are:
Engine
Breaks
Wheels etc.
Sub-systems can be further broken down into even smaller sub-systems such as:
Engine - spark plugs, sensors, pistons
In computers, there are five main sub-systems:
Executes Stores data & Stores data and Allows a user to Displays information
instructions instructions software enter information or creates a physical
temporarily for the permanently (HDD, (keyboard, mouse) output (monitor,
CPU (RAM) SSD) printer)
Computer sub-systems can be further broken down into smaller sub-systems such as:
CPU - control unit, registers & arithmetic logic unit (ALU)
Advantages of sub-systems
Can help troubleshoot problems in a computer system
The ability to isolate a sub-system makes it easier to identify and fix issues, as each sub-system can
be examined separately
Developing software relies on the use of different sub-systems to ensure they operate efficiently
Page 2 of 5
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Gives developers and designers a clear picture of how sub-systems help build complex systems
Your notes
Page 3 of 5
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Problem Decomposition
Your notes
Problem Decomposition
What is decomposition?
Decomposition is the process of breaking down a large problem into a set of smaller problems
Benefits of decomposition are:
Smaller problems are easier to solve
Each smaller problem can be solved independently of the others
Smaller problems can be tested independently
Smaller problems can be combined to produce a solution to the full problem
Modern computer games are a good example of using decomposition to break down the complexity
of the problem into more manageable 'chunks'
Creating an entire game at once would be challenging and inefficient, so it could be decomposed
into:
Levels - Levels can be designed/created/tested/ independently of other levels
Characters - The mechanics of characters in the game can be designed and created by a separate
team
Landscape - The art team can work on the visual aspects of the game without needing to
understand how the game is programmed
Once all of the smaller problems are completed, joined together a complex game has been created
Page 4 of 5
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 5 of 5
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 11
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Designing Algorithms
Your notes
What is an algorithm?
An algorithm is precise set of rules or instructions to solve a specific problem or task
There are three main ways to design an algorithm
Structure diagrams
Flowchart
Pseudocode
Structure Diagrams
What is a structure diagram?
Structure diagrams show hierarchical top-down design in a visual form
Each problem is divided into sub-problems and each sub-problem divided into further sub-problems
At each level the problem is broken down into more detailed tasks that can be implemented using a
single subroutine
Your notes
Flowcharts
What is a flowchart?
Flowcharts are a visual tool that uses shapes to represent different functions to describe an
algorithm
Flowcharts show the data that is input and output, the processes that take place and any decisions or
repetition
Lines are used to show the flow of control
Page 3 of 11
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Example
Flowchart
Page 4 of 11
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
The casino would like the algorithm refined so that the user also enters their first name and this is used
to greet the user when they access the site
Page 5 of 11
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Flowchart
Your notes
Page 6 of 11
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Page 7 of 11
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
What is pseudocode?
Pseudocode is a text-based tool that uses short English words/statements to describe an algorithm
Pseudocode is more structured than writing sentences in English but is very flexible
Example
A casino would like a program that asks users to enter an age, if they are 18 or over they can enter the
site, if not then they are given a suitable message
Pseudocode
INPUT Age
IF Age >= 18
THEN
OUTPUT "Welcome to the site"
ELSE
OUTPUT "Sorry, this site is for users 18 and over"
The casino would like the algorithm refined so that the user also enters their first name and this is used
to greet the user when they access the site
Pseudocode
INPUT FName
INPUT Age
IF Age >= 18
THEN
OUTPUT "Welcome to the site", FName
ELSE
OUTPUT "Sorry, this site is for users 18 and over"
Page 8 of 11
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Explaining Algorithms
Your notes
Explaining Algorithms
How do you explain an algorithm?
A well designed algorithm should be able to be interpreted by a new user and they should be able to
explain what it does
Algorithms can be written using flowcharts, pseudocode or high-level programming language code
such as Python
The purpose of an algorithm is to solve a problem, if a user does not know the goal of the algorithm,
then following the algorithm instructions should make its purpose clear
If the algorithm is complex then additional ways to understand the problem could be:
Look for comments in the code
Consider the context of where the algorithm is being used
Test the algorithm with different inputs
Look at the following algorithm, can you explain what it does?
Pseudocode
Count ← 1
Number ← 0
Total ← 0
REPEAT
INPUT Number
Total ← Total + Number
Count ← Count + 1
UNTIL Count > 10
OUTPUT Total
The purpose of the algorithm is to add ten user-entered numbers together and output the total
The processes are:
initializing three variables (Count, Number, Total)
inputting a user number
adding to two variables (Total, Count)
Page 9 of 11
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Worked Example
The pseudocode algorithm shown has been written by a teacher to enter marks for the students in
her class and then to apply some simple processing.
Count ← 0
REPEAT
INPUT Score[Count]
Count ← Count + 1
UNTIL Count = 30
Page 10 of 11
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 11 of 11
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Linear Search
What is a linear search?
A linear search starts with the first value in a dataset and checks every value one at a time until all
values have been checked
A linear search can be performed even if the values are not in order
4 REPEAT UNTIL you have checked all values and not found the value you are looking for
Page 2 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
# Identify the dataset to search, the target value and set the initial flag
data = [5, 2, 8, 1, 9]
target = 11 Your notes
found = False
Bubble Sort
What is a bubble sort?
A bubble sort is a simple sorting algorithm that starts at the beginning of a dataset and checks values in
'pairs' and swaps them if they are not in the correct order
One full run of comparisons from beginning to end is called a 'pass', a bubble sort may require multiple
'passes' to sort the dataset
The algorithm is finished when there are no more swaps to make
Page 3 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Example
Perform a bubble sort on the following dataset
Page 4 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
5 2 4 1 6 3
Your notes
Step Instruction
5 2 4 1 6 3
2 5 4 1 6 3
2 5 4 1 6 3
4 REPEAT step 2 & 3 until you reach the end of the dataset
5 & 4 SWAP!
2 4 5 1 6 3
5 & 1 SWAP!
2 4 1 5 6 3
5 & 6 NO SWAP!
2 4 1 5 6 3
6 & 3 SWAP!
2 4 1 5 3 6
Page 5 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
End of pass 1
Your notes
5 IF you have made any swaps...
REPEAT from the start
End of pass 2 (swaps made)
2 1 4 3 5 6
1 2 3 4 5 6
1 2 3 4 5 6
# Unsorted dataset
nums = [66, 7, 69, 50, 42, 80, 71, 321, 67, 8, 39]
Page 6 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Worked Example
A program uses a file to store a list of words.
Show the stages of a bubble sort when applied to data shown [2]
How to answer this question
We need to sort the values in to alphabetical order from A-Z
You CAN use the first letter of each word to simplify the process
Answer
E, B, C, M, G, P (pass 1)
B, C, E, G, M, P (pass 2)
Page 7 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Pseudocode
Total ← 0
FOR Count ← 1 TO ReceiptLength
INPUT ItemValue
Total ← Total + itemValue
NEXT Count
OUTPUT Total
What is counting?
Counting is when a count is incremented or decremented by a fixed value, usually 1, each time it
iterates
Counting keeps track of the number of times an action has been performed
Many algorithms use counting, including the linear search to track which element is currently being
considered
In the example below, the count is incremented and each pass number is output until fifty outputs have
been produced
Pseudocode
Count ← 0
DO
OUTPUT “Pass number”, Count
Count ← Count + 1
UNTIL Count >= 50
In the example below, the count is decremented from fifty until the count reaches zero. An output is
produced for each pass
Page 8 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Pseudocode
Your notes
Count ← 50
DO
OUTPUT “Pass number”, Count
Count ← Count - 1
UNTIL Count <= 0
Pseudocode
Total ← 0
Scores ← [25, 11, 84, 91, 27]
Highest ← max(Scores)
Lowest ← min(Scores)
# Calculate average
Average ← Total / LENGTH(Scores)
Page 9 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 17
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 2 of 17
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Range check
Ensures the data entered as a number falls within a particular range
Page 3 of 17
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Python Ensures a user's age has been entered and falls between the digits of 0-110 inclusive
Your notes
age = int(input("Enter your age"))
while age < 0 or age > 110:
age = int(input("Enter your age, ensure it is between 0-110"))
Length check
Checks the length of a string
password_length = len(password)
while password_length < 8:
password = input("Enter a password which is 8 or more characters")
Type check
Check the data type of a field
Page 4 of 17
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Presence check
Looks to see if any data has been entered in a field
Python Ensures when registering for a website the name field is not left blank
Format check
Ensures that the data has been entered in the correct format
Format checks are done using pattern matching and string handling
Pseudocode Ensures a six digit ID number is entered against the format "XX9999" where X is an
uppercase alphabetical letter and 9999 is a four digit number
INPUT IDNumber
IF LENGTH(IDNumber) <> 6
THEN
OUTPUT "ID number must be 6 characters long"
END IF
Page 5 of 17
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
ValidChars ← "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
Your notes
FirstChar ← SUBSTRING(IDNumber, 1, 1)
ValidChar ← False
Index ← 1
IF ValidChar = False
THEN
OUTPUT "First character is not a valid uppercase alphabetical character"
ENDIF
SecondChar ← SUBSTRING(IDNumber, 2, 2)
ValidChar ← False
Index ← 1
IF ValidChar = False
THEN
OUTPUT "Second character is not a valid uppercase alphabetical character"
ENDIF
Explanation
The first two characters are checked against a list of approved characters
The first character is compared one at a time to each valid character in the ValidChars array
Page 6 of 17
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Python Ensures an email contains a '@' and ' full stop (.) which follows the format
"email@address.com"
Check digits
Check digits are numerical values that are the final digit of a larger code such as a barcode or an
International Standard Book Number (ISBN)
They are calculated by applying an algorithm to the code and are then attached to the overall code
Verification
What is verification?
Verification is the act of checking data is accurate when entered into a system
Mistakes such as creating a new account and entering a password incorrectly mean being locked out
of the account immediately
Verification methods include:
double entry checking
visual checks
Page 7 of 17
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Visual checks
Visual checks involve the user visually checking the data on the screen
A popup or message then asks if the data is correct before proceeding
If it isn’t the user then enters the data again
Pseudocode
REPEAT
OUTPUT “Enter your name”
INPUT Name
OUTPUT “Your name is: “, Name, “. Is this correct? (y/n)”
INPUT Answer
UNTIL Answer ← “y”
Worked Example
Describe the purpose of validation and verification checks during data entry. Include an example for
each.
[4]
Answers
Validation check
[1] for description:
Page 8 of 17
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 9 of 17
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Python
Normal data
Normal test data is data that should be accepted in the program
An example would be a user entering their age as 16 into the age field of the program
Abnormal data
Page 10 of 17
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Boundary data
Boundary test data is similar to extreme data except that the values on either side of the maximum and
minimum values are tested
The largest and smallest acceptable value is tested as well as the largest and smallest unacceptable
value
An example would be a user entering their age as 11 or 19 into the age field of the program
Normal 14 Accepted
Normal 16 Accepted
Extreme 12 Accepted
Extreme 18 Accepted
Abnormal H Rejected
Abnormal @ Rejected
Boundary 11 Rejected
Boundary 19 Rejected
Page 11 of 17
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Worked Example
Your notes
A programmer has written an algorithm to check that prices are less than $10.00
These values are used as test data: 10.00 9.99 ten
State why each value was chosen as test data.
[3]
Answers
10.00 is boundary or abnormal data and should be rejected as it is out of range [1]
9.99 is boundary, extreme and normal data and should be accepted as it is within the normal range [1]
Ten is abnormal data and should be rejected as it is the wrong value type [1]
Page 12 of 17
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Trace Tables
Your notes
Trace Tables
What is a trace table?
A trace table is used to test algorithms and programs for logic errors that appear when an algorithm or
program executes
Trace tables can be used with flowcharts, pseudocode or program code
A trace table can be used to:
Discover the purpose of an algorithm by showing output data and intermediary steps
Record the state of the algorithm at each step or iteration
Each stage of the algorithm is executed step by step.
Inputs, outputs, variables and processes can be checked for the correct value when the stage is
completed
Page 13 of 17
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Page 14 of 17
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
3 7 7
4 1
5 8 8
6 3
7 6
8 9 9
9 12 12
Worked Example
The flowchart represents an algorithm. The algorithm will terminate if –1 is entered.
Page 15 of 17
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Complete the trace table for the input data: 50, 75, 99, 28, 82, 150, –1, 672, 80
[4]
Page 16 of 17
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Answer
[1] for each correct column
50 50 0 Accept: Extreme
75 25 25 Accept: Normal
99 1 49 Accept: Normal
28 Reject: Abnormal
82 18 32 Accept: Normal
-1
Page 17 of 17
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Identifying Errors
Your notes
Identifying errors
Designing algorithms is a skill that must be developed and when designing algorithms, mistakes and
issues will occur
Trace tables can also help to find any kind of error in a program or algorithm
There are three main categories of errors that when designing algorithms a programmer must be able
to identify & fix, they are:
Syntax errors
Logic errors
Runtime errors
Syntax Errors
What is a syntax error?
A syntax error is an error that breaks the grammatical rules of a programming language and stops it
from running
Examples of syntax errors are:
Typos and spelling errors
Missing or extra brackets or quotes
Misplaced or missing semicolons
Invalid variable or function names
Incorrect use of operators
Incorrectly nested loops & blocks of code
def main():
# -----------------------------------------------------------------------
# Prompts the user for personal information and displays a suggested username
Page 2 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
# -----------------------------------------------------------------------
first_name = imput("Enter your first name: ")
last_name = input("Enter your last name: ") Your notes
usdrname = generate_username(first_name, last_name)
print(f"Here's a suggested username: {username}")
# ------------------------------------------------------------------------
# Main program
# ------------------------------------------------------------------------
main
def main():
# -----------------------------------------------------------------------
# Prompts the user for personal information and displays a suggested username
# -----------------------------------------------------------------------
first_name = input("Enter your first name: ")
last_name = input("Enter your last name: ")
username = generate_username(first_name, last_name)
print(f"Here's a suggested username: {username}")
# ------------------------------------------------------------------------
# Main program
# ------------------------------------------------------------------------
main()
Syntax errors
Logic Errors
What is a logic error?
Page 3 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
A logic error is where incorrect code is used that causes the program to run, but produces an
incorrect output or result
Your notes
Logic errors can be difficult to identify by the person who wrote the program, so one method of finding
them is to use 'Trace Tables'
Examples of logic errors are:
Incorrect use of operators (< and >)
Logical operator confusion (AND for OR)
Looping one extra time
Indexing arrays incorrectly (arrays indexing starts from 0)
Using variables before they are assigned
Infinite loops
Python code
def main():
# -----------------------------------------------------------------------
Prompts the user for rectangle dimensions and prints the calculated area
# -----------------------------------------------------------------------
try:
length = float(input("Enter the length of the rectangle: "))
width = float(input("Enter the width of the rectangle: "))
# Call the area calculation function
area = calculate_area(length, width)
print(f"The area of the rectangle is approximately {area:.2f} square units.")
except ValueError as error:
print(f"Error: {error}")
Page 4 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
# -----------------------------------------------------------------------
# Main program Your notes
# -----------------------------------------------------------------------
main()
Logic errors
Test Test Expected outcome Actual outcome Changes needed?
number data (Y/N)
Runtime Errors
What is a runtime error?
A runtime error is where an error causes a program to crash
Examples of runtime errors are:
Dividing a number by 0
Index out of the range of an array
Unable to read or write a drive
Python code
Page 5 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
def main():
# -----------------------------------------------------------------------
Prompts the user for rectangle dimensions and prints the calculated area
# -----------------------------------------------------------------------
try:
length = float(input("Enter the length of the rectangle: "))
width = float(input("Enter the width of the rectangle: "))
# Call the area calculation function
area = calculate_area(length, width)
print(f"The area of the rectangle is approximately {area:.2f} square units.")
except ValueError as error:
print(f"Error: {error}")
# -----------------------------------------------------------------------
# Main program
# -----------------------------------------------------------------------
main()
Runtime errors
Test Test Expected outcome Actual outcome Changes needed?
number data (Y/N)
Page 6 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Runtime error identified as missing iteration (while loop) so program does not ask user to enter width
and height again
Corrected code now includes a while loop
while True:
try:
length = float(input("Enter the length of the rectangle: "))
width = float(input("Enter the width of the rectangle: "))
# Call the area calculation function
area = calculate_area(length, width)
print(f"The area of the rectangle is approximately {area:.2f} square units.")
break # Exit the loop if successful
except ValueError as error:
print(f"Error: {error}")
print("Please enter positive values for length and width.")
Page 7 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 8 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 9 of 9
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Pseudocode
Python
Page 2 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
What is a constant?
A constant is an identifier set once in the lifetime of a program Your notes
Constants are named in all uppercase characters
Constants aid the readability and maintainability
If a constant needs to be changed, it should only need to be altered in one place in the whole program
Pseudocode
CONSTANT PI ← 3.142
Python
PI = 3.142
VAT = 0.20
PASSWORD = "letmein"
Page 3 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Data Types
Your notes
Data Types
What is a data type?
A data type is a classification of data into groups according to the kind of data they represent
Computers use different data types to represent different types of data in a program
The basic data types include:
Real Numbers with a fractional part (decimal) REAL 3.14, -2.5, 0.0
It is important to choose the correct data type for a given situation to ensure accuracy and efficiency
in the program
Data types can be changed within a program, this is called casting
Page 4 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Boolean LightSensor ← True lightSensor = True
Worked Example
Name and describe the most appropriate programming data type for each of the examples of data
given. Each data type must be different
[6]
Data: 83
Data: myemail@savemyexams.co.uk
Data: True
Answers
Data type name: Integer [1]
Data type description: The number is a whole number [1]
Data type name: String [1]
Data type description: It is a group of characters [1]
Data type name: Boolean [1]
Data type description: The value is True (or could be False) [1]
Page 5 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Examples
Pseudocode (INPUT <identifier>) Python
What is an output?
An output is a value sent to an output device from a computer program
Typical output devices include:
Monitor - Displaying text, images or graphics
Speaker - Playing audio
Printer - Creating physical copies of documents or images
Page 6 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
OUTPUT "Love the name ", Name print("Love the name "+name)
Page 7 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Sequence
Your notes
Sequence
What is sequence?
Sequence refers to lines of code which are run one line at a time
The lines of code are run in the order that they written from the first line of code to the last line of code
Sequence is crucial to the flow of a program, any instructions out of sequence can lead to
unexpected behaviour or errors
Example 1
A simple program to ask a user to input two numbers, number two is subtracted from number one and
the result is outputted
Line Pseudocode
02 INPUT Num1
04 INPUT Num2
06 OUTPUT Result
A simple swap of line 01 and line 02 would lead to an unexpected behaviour, the user would be
prompted to input information without knowing what they should enter
Example 2
Python example
Page 8 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Inputs:
length: The length of the rectangle Your notes
width: The width of the rectangle
Returns:
The area of the rectangle
# ------------------------------------------------------------------------
# Main program
# ------------------------------------------------------------------------
length = 5
width = 3
correct_area = calculate_area(length, width)
print(f"Correct area (length * width): {correct_area}")
In the example, the sequence of instructions is wrong and would cause a runtime error
In the calculate_area() function a value is returned before it is assigned
The correct sequence is:
area = length * width
return area
Page 9 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Selection
Your notes
What is Selection?
Selection is when the flow of a program is changed, depending on a set of conditions
The outcome of this condition will then determine which lines or block of code is run next
Selection is used for validation, calculation and making sense of a user's choices
There are two ways to write selection statements:
if... then... else...
case...
If Statements
What is an If statement?
As If statements allow you to execute a set of instructions if a condition is true
They have the following syntax:
IF <condition>
THEN
<statement>
ENDIF
A detailed look at a Python IF statement:
Page 10 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Example
Concept Pseudocode Python
Nested Selection
What is nested selection?
Nested selection is a selection statement within a selection statement, e.g. an If inside of another If
Nested means to be 'stored inside the other'
Page 11 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Example
Pseudocode Your notes
Python
Case Statements
What is a case statement?
Page 12 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
A case statement can mean less code but it only useful when comparing multiple values of the same
variable
Your notes
If statements are more flexible and are generally used more in languages such as Python
The format of a CASE statement is:
CASE OF <identifier>
<value 1> : <statement>
<value 2>: <statement>
....
OTHERWISE <statement>
ENDCASE
Page 13 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Worked Example
Write an algorithm using pseudocode that: Your notes
Inputs 3 numbers
Outputs the largest of the three numbers
[3]
Exemplar answer
Pseudocode
INPUT A
INPUT B
INPUT C
IF A > B
THEN
IF A > C
THEN
OUTPUT A
ELSE
OUTPUT C
ENDIF
ELSE
OUTPUT B
ENDIF
Python
if A > B and A > C:
print(A)
elif B > C:
print(B)
else:
print(C)
Page 14 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Iteration
Your notes
What is iteration?
Iteration is repeating a line or a block of code using a loop
Iteration can be:
Count controlled
Condition controlled
Nested
Page 15 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Examples
Iteration Pseudocode Python
REPEAT
<statement>
UNTIL <condition>
Page 17 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
WHILE <condition> DO
<statements> Your notes
ENDWHILE
A detailed look at a Python WHILE statement:
Page 18 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Nested Iteration
Your notes
What is nested selection?
Nested iteration is a loop within a loop, e.g. a FOR inside of another FOR
Nested means to be 'stored inside the other'
Example
Pseudocode
Total ← 0
FOR Column ← 1 TO 10
RowTotal ← RowTotal + Amount[Row, Column]
NEXT Column
NEXT Row
Python
# Set the initial value of the counter for the outer loop
outer_counter = 1
# Inner loop to print the multiplication table for the current number
while inner_counter <= 10:
# Calculate the product of the outer and inner counters
product = outer_counter * inner_counter
Page 19 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 20 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Pseudocode Python
Total ← 0 total = 0
FOR I ← 1 to 10 for i in range(1, 11):
INPUT Num num = int(input("Enter a number: "))
TOTAL ← TOTAL + Num total = total + num
NEXT I print("Total:", total)
OUTPUT Total
Pseudocode Python
Count ← 0 count = 0
FOR I ← 1 to 10 for i in range(1, 11):
INPUT Num num = int(input("Enter a number: "))
IF Num > 5 if num > 5:
THEN count = count + 1
Count ← Count + 1 print("Count:", count)
ENDIF
NEXT I
OUTPUT Count
Worked Example
Write an algorithm using pseudocode that:
Page 21 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Inputs 20 numbers
Outputs how many of these numbers are greater than 50
[3] Your notes
Answer
Count = 0
FOR x ← 1 TO 20 [1]
INPUT Number
IF Number > 50
THEN
Count ← Count + 1 [1]
NEXT x
PRINT Count [1]
Page 22 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
String Handling
Your notes
String Handling
What is string manipulation?
String manipulation is the use of programming techniques to modify, analyse or extract information
from a string
Examples of string manipulation include:
Case conversion (modify)
Length (analyse)
Substrings (extract)
Case conversion
The ability to change a string from one case to another, for example, lower case to upper case
Length
The ability to count the number of characters in a string, for example, checking a password meets the
minimum requirement of 8 characters
Page 23 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Substring
The ability to extract a sequence of characters from a larger string in order to be used by another
function in the program, for example, data validation or combining it with other strings
Extracting substrings is performed using 'slicing', using specific start and end to slice out the desired
characters
Substring has a start position of 1 in pseudocode and 0 in Python
Worked Example
The function Length(x) finds the length of a string x. The function substring(x,y,z) finds a substring of x
starting at position y and z characters long. The first character in x is in position 1.
Write pseudocode statements to:
Store the string “Save my exams” in x
Find the length of the string and output it
Extract the word exams from the string and output it
[6]
Answer
X ← "Save my exams"
Page 24 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
OUTPUT LENGTH(X)
Your notes
# [1] for calling the function length. [1] for using the correct parameter X
Y←9
Z←5
OUTPUT SUBSTRING(X,Y,Z)
Page 25 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Arithmetic Operators
Operator Pseudocode Python
Addition + +
Subtraction - -
Multiplication * *
Division / /
To demonstrate the use of common arithmetic operators, three sample programs written in Python are
given below
Comments have been included to help understand how the arithmetic operators are being used
Arithmetic operators #1 - a simple program to calculate if a user entered number is odd or even
Arithmetic operators #2 - a simple program to calculate the area of a circle from a user inputted
radius
Page 26 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Arithmetic operators #3 - a simple program that generates 5 maths questions based on user
inputs and gives a score of how many were correctly answered at the end
Your notes
Python code
# -----------------------------------------------------------------------
# Arithmetic operators #1
# -----------------------------------------------------------------------
# Get the user to input a number
user_input = int(input("Enter a number: "))
# -----------------------------------------------------------------------
# Arithmetic operators #2
# -----------------------------------------------------------------------
# Get the radius from the user
radius = float(input("Enter the radius of the circle: "))
# ------------------------------------------------------------------------
# Arithmetic operators #3
# ------------------------------------------------------------------------
# Set the score to 0
score = 0
# Loop 5 times
for x in range(5):
num1 = int(input("Enter the first number: "))
operator = input("Enter the operator (+, -, *): ")
num2 = int(input("Enter the second number: "))
user_answer = int(input("What is " + str(num1) + " " + str(operator) + " " + str(num2) + "? "))
Page 27 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
if user_answer == correct_answer:
score = score + 1
else:
print("Sorry, that's incorrect.")
Logical Operators
Operator Pseudocode Python
Equal to == ==
Boolean Operators
A Boolean operators is a logical operator that can be used to compare two or more values and return a
Boolean value (True or False) based on the comparison
There are 3 main Boolean values:
AND: Returns True if both conditions are True
OR: Returns True if one or both conditions are True
NOT: Returns the opposite of the condition (True if False, False if True)
Page 28 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
To demonstrate the use of common Boolean operators, three sample programs written in Python are
given below
Your notes
Comments have been included to help understand how the Boolean operators are being used
Common Boolean operators #1 - a simple program that assigns Boolean values to two variables
and outputs basic comparisons
Common Boolean operators #2 - a simple program to output a grade based on a users score
Common Boolean operators #3 - a simple program reads a text files and searches for an inputted
score
Python code
# -----------------------------------------------------------
# Common Boolean operators #1
# -----------------------------------------------------------
# Assign a Boolean value to a and b
a = True
b = False
# -----------------------------------------------------------
# Common Boolean operators #2
# -----------------------------------------------------------
# Take input for the score from the user
score = int(input("Enter the score: "))
# -----------------------------------------------------------
# Common Boolean operators #3
# -----------------------------------------------------------
Page 29 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
# While it's not the end of the file and the score has not been found
while not end_of_file and not found:
# Read the line
scores = file.readline().strip()
except FileNotFoundError:
print("The file 'scores.txt' was not found.")
Page 30 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Procedures
Procedures are defined using the PROCEDURE keyword in pseudocode or def keyword in Python
A procedure can be written as:
PROCEDURE <identifier>
<statements>
ENDPROCEDURE
Or if parameters are being used:
Page 31 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Pseudocode
Python
def ageCheck(age):
if age > 18:
print("You are old enough")
else:
print("You are too young")
CALL <identifier>
CALL <identifier>(Value1,Value2...)
Calling a procedure
Pseudocode
CALL Calculate_area
CALL Calculate_area(5,3)
Python
ageCheck(21)
print(ageCheck(21))
Examples
A Python program using procedures to display a menu and navigate between them
Page 32 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Procedures are defined at the start of the program and the main program calls the first procedure to
start
Your notes
In this example, no parameters are needed
Procedures
Page 33 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
# Main program
while True: # Loop to continuously show the menu until the user chooses to exit
main_menu()
Functions
Functions are defined using the FUNCTION keyword in pseudocode or def keyword in Python
Functions always return a value so they do not use the CALL function, instead they are called within an
expression
A function can be written as:
Pseudocode
Page 34 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Python
Your notes
def squared(number):
squared = number^2
return squared
Examples
A Python program using a function to calculate area and return the result
Two options for main program are shown, one which outputs the result (# 1) and one which stores the
result so that it can be used at a later time (# 2)
Functions
# Main program #1
length = int(input("Enter the length: "))
width = int(input("Enter the width: "))
print(area(length, width)) # Calls the area function and prints the result
# Main program #2
length = int(input("Enter the length: ")) # Input for length
width = int(input("Enter the width: ")) # Input for width
calculated_area = area(length, width) # Stores the result of the function in a variable
print("The area is " + str(calculated_area) + " cm^2") # Outputs the result with a message
Worked Example
An economy-class airline ticket costs £199. A first-class airline ticket costs £595.
(A) Create a function, flightCost(), that takes the number of passengers and the type of ticket as
parameters, calculates and returns the price to pay.
You do not have to validate these parameters
Page 35 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Part Python
B print(flightCost("economy", 3)
OR
x = flightCost("economy", 3)
print(x)
Page 36 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Python example
In this python code, you can see that the localVariable (with the value 10) is declared inside of the
function printValue
This means that only this function can access and change the value in the local variable
It cannot be accessed by other modules in the program
Local variables
def printValue():
localVariable = 10 # Defines a local variable inside the function
print("The value of the local variable is:", localVariable)
Global Variables
What is a global variable?
A global variable is a variable declared at the outermost level of a program.
They are declared outside any modules such as functions or procedures
Global variables have a global scope, which means they can be accessed and modified from any part
of the program
Python example
In this python code, you can see that the globalVariable (with the value 10) is declared outside of the
function printValue
Page 37 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
This means that this function and any other modules can access and change the value in the global
variable
Your notes
Global variables
def printValue():
global globalVariable
print("The value into the variable is:", globalVariable)
Page 38 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Library Routines
Your notes
Library Routines
What are library routines?
A library routine is reusable code that can be used throughout a program
The code has been made public through reusable modules or functions
Using library routines saves programmers time by using working code that has already been tested
Some examples of pre-existing libraries are:
Random
Round
Random
The random library is a library of code which allows users to make use of 'random' in their programs
Examples of random that are most common are:
Random choices
Random numbers
Random number generation is a programming concept that involves a computer generating a random
number to be used within a program to add an element of unpredictability
Examples of where this concept could be used include:
Simulating the roll of a dice
Selecting a random question (from a numbered list)
National lottery
Cryptography
Page 39 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
choice = random.choice()
Examples in Python
Random code
National lottery
import random
Page 40 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Round
The round library is a library of code which allows users to round numerical values to a set amount of
decimal places
An example of rounding is using REAL values and rounding to 2 decimal places
The round library can be written as:
ROUND(<identifier>, <places>)
Page 41 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Maintaining Programs
Your notes
Maintaining Programs
How do you write programs that are easy to maintain?
Easy to maintain programs are written using techniques that make code easy to read
Programmers should be consistent with the use of techniques such as:
Layout - spacing between sections
Indentation - clearly defined sections of code
Comments - explaining key parts of the code
Meaningful variable names - describe what is being stored
White space - adding suitable spaces to make it easy to read
Sub-programs - Functions or procedures used where possible
When consistency is applied, programs are easy to maintain
Page 42 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
# ------------------------------------------------------------------------
# Main program
# ------------------------------------------------------------------------
main()
Page 43 of 43
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 7
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Arrays
Your notes
1-Dimensional Arrays
What is an array?
An array is an ordered, static set of elements in a fixed-size memory location
An array can only store 1 data type
A 1D array is a linear array
Indexes start at generally start at 0, known as zero-indexed
Page 2 of 7
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Access the individual elements of the array by using the following syntax:
array[index]
Modify the individual elements by assigning new values to specific indexes using the following syntax:
array[index] = newValue
Use the len function to determine the length of the array by using the following syntax:
len(array)
In the example the array has been iterated through to output each element within the array. A for loop
has been used for this
Python
Page 3 of 7
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
# Output:
#1
# 10
#3
#4
#5
2-Dimensional Arrays
What is a 2-dimensional array?
A 2D array extends the concept on a 1D array by adding another dimension
A 2D array can be visualised as a table with rows and columns
When navigating through a 2D array you first have to go down the rows and then across the columns to
find a position within the array
Page 4 of 7
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
NamesAndNumbers[2, 1] ← "25"
NamesAndNumbers[2, 2] ← "33"
NamesAndNumbers[2, 3] ← "19"
NamesAndNumbers[3, 1] ← "Sarah"
NamesAndNumbers[3, 2] ← "12"
NamesAndNumbers[3, 3] ← "8"
Page 5 of 7
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Assigns the name "Holly" to index 0, 1 (1st row, 2nd column) - replaces "Paul"
Your notes
Example in Python
Initialising a 2D array with 3 rows and 3 columns, with the specified values
Worked Example
A parent records the length of time being spent watching TV by 4 children
Page 6 of 7
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Data for one week (Monday to Friday) is stored in a 2D array with the identifier minsWatched.
The following table shows the array Your notes
Quinn Lyla Harry Elias
0 1 2 3
Monday 0 34 67 89 78
Tuesday 1 56 43 45 56
Wednesday 2 122 23 34 45
Thursday 3 13 109 23 90
Write a line of code to output the number of minutes that Lyla watched TV on Tuesday [1]
Write a line of code to output the number of minutes that Harry watched TV on Friday [1]
Write a line of code to output the number of minutes that Quinn watched TV on Wednesday [1]
Answers
print(minsWatched[1,1] or print(minsWatched[1][1]
print(minsWatched[2,4] or print(minsWatched[2][4]
print(minsWatched[0,2] or print(minsWatched[0][2]
Page 7 of 7
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 4
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
File Handling
Your notes
File Handling
What is file handling?
File handling is the use of programming techniques to work with information stored in text files
Examples of file handing techniques are:
opening text files
reading text files
writing text files
closing text files
Page 3 of 4
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
When opening files it is really important to make sure you use the correct letter in the open
command
Your notes
"r" is for reading from a file only
"w" is for writing to a new file, if the file does not exist it will be created. If a file with the same
name exists the contents will be overwritten
"a" is for writing to the end of an existing file only
Always make a backup of text files you are working with, one mistake and you can lose the contents!
Worked Example
Use pseudocode to write an algorithm that does the following :
Inputs the title and year of a book from the user.
Permanently stores the book title and year to the existing text file books.txt [4]
How to answer this question
Write two input statements (title and year of book)
Open the file
Write inputs to file
Close the file
Example answer
title = input("Enter title")
year = input("Enter year")
file = open("books.txt")
file.writeline(title)
file.writeline(year)
file.close()
Guidance
file.writeline(title) 1 mark
file.writeline(year)
file.close() 1 mark
Page 4 of 4
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 8
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Text files
A text file is useful when working with small amounts of data, text files are stored on secondary storage
and 'read' into a program when being used
They are used to store information when the application is closed
Each entry is stored on a new line or separated with a special identifier, for example, a comma (',')
It can be difficult in text files to know where a record begins and ends
Page 2 of 8
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Validation
When a table is created, validation rules can be assigned to the different fields
A validation rule controls what data can be entered into that field
There are different types of validation checks used to limit what data can be entered into each
field
The validation checks that are used are the same as those that appear in section 7: Algorithm
Design & Problem-Solving
Type Description
Length This type of validation checks the number of characters that have been entered into a field.
Check For example, you might make phone numbers entered have to be eleven characters long
Format This type of validation checks data entered meets an exact format. For example, a product
Check code might have to be two letters followed by five numbers
Page 3 of 8
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Range A range check will check the number entered is within a specific range. For example, the
Check age of a dog would be between 0 - 40. Any other number would be disallowed
Your notes
Presence A presence check can be added to fields which cannot be left blank
Check
Type A type check will allow data with a specific data type to be entered into a field. For
Check example, if text was entered into a field which is supposed to contain the date of birth of a
person it would not be allowed
Check Check digit validation is a process used to verify the accuracy of numbers such as credit
Digits card numbers. A check digit is a single digit added to the end of the number, which is
calculated based on a specific algorithm applied to the other digits in the number. When
the data is re-entered the same algorithm can be applied, and if it produces a different
result the code is incorrect
Worked Example
A Database Table Containing Student Grades
Page 4 of 8
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Data types
What is a data type?
A data type is the type of data that can be held in a field and is defined when designing a table
Examples of common datatypes are:
Integer - whole number
Real - decimal number
Text/alphanumeric - text data
Character - single
Date/Time
Boolean - true or false values
In the table cars below, the following datatypes would be used:
car_id: integer
make: text/alphanumeric
model: text/alphanumeric
colour: text/alphanumeric
Page 5 of 8
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
price: real
cars
Your notes
car_id make model colour price
Page 6 of 8
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Primary Keys
Your notes
Primary Keys
What is a primary key?
A primary key is a unique field that can be used to identify a record in a table
customer_id is the primary key for the customers table below
Other examples of primary keys in database tables would include:
Student_ID in a school database
Car_Registration in a car database
Product_ID in a shop database
Page 7 of 8
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Worked Example
A database has been developed for a dance club to store information about their members.
The database contains one table: Members
Figure A shows some data from the table.
Members
State the name of the field from the Members table that is the most suitable to use as the primary
key [1]
Answer
(a) MemberID
Page 8 of 8
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 6
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
SQL
Your notes
SQL
What is SQL?
SQL (Structured Query Language) is a programming language used to interact with a DBMS.
The use of SQL allows a user to:
Select data
Order data
Sum data
Count data
Page 2 of 6
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Examples
Select all the fields from the Customers table
Command:
Output:
Page 3 of 6
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Select the ID, name & age of customers who are older than 25
Command:
Output:
ID Name Age
1 John Doe 30
3 Peter Lee 40
Select the name and country of customers who are from a country that begins with 'U'
Command:
Output:
Name Country
Page 4 of 6
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
SELECT *
FROM Customers
WHERE City = 'London' OR City = 'Paris';
Output:
Worked Example
Below is a table of animals called tbl_animals
Blue Whale No 1
Orangutan Yes 1
Dolphin Yes 1
Page 5 of 6
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Kangaroo Yes 1
Penguin Yes 1
Complete this SQL statement to display all of the animal breeds that are currently breeding and
there was only one young born this year [3]
SELECT .................................................
FROM .................................................
WHERE .................................................
Answer
SELECT Animal [1]
FROM tbl_animals [1]
WHERE Number of Young == 1 [1]
Page 6 of 6
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 1 of 22
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Logic Gates
Your notes
Logic gates
What is Boolean logic?
Boolean logic is used in computer science and electronics to make logical decisions
Boolean operators are either TRUE or FALSE, often represented as 1 or 0
Inputs and outputs are given letters to represent them
To define Boolean logic we use special symbols to make writing expressions much easier
AND
Expression operator Circuit symbol Explanation
OR
Page 2 of 22
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
NOT
Expression operator Circuit symbol Explanation
Page 3 of 22
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Page 4 of 22
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
You will need to either draw a diagram of a logic circuit using these symbols, or you will have to write
the boolean expression from an existing diagram.
Your notes
Page 5 of 22
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Logic Circuits
Your notes
Logic Circuits
What is a logic circuit?
A logic circuit performs logical operations on binary information
Logic gates are core components of logic circuits
Based on the arrangement of logic gates and the input signals, the circuit performs a specific function
A logic diagram is a visual representation of a combinations of logic gates within a logic circuit
Brackets are used to clarify the order of operations
An example logic diagram for the Boolean expression Q = NOT(A OR B) would be:
Page 6 of 22
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Logic circuits will be limited to a maximum of three inputs and one output
P = (A OR B) AND NOT C
Worked Example
A sprinkler system switches on if it is not daytime (input A) and the temperature is greater than 40
(input B)
Draw a logic circuit to represent the problem statement above
[2]
Page 7 of 22
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Page 8 of 22
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Truth Tables
Your notes
Truth Tables
What is a truth table?
A truth table is a tool used in logic and computer science to visualise the results of Boolean
expressions
They represent all possible inputs and the associated outputs for a given Boolean expression
AND
Circuit symbol Truth Table
A B A AND B
0 0 0
0 1 0
1 0 0
1 1 1
OR
Circuit symbol Truth Table
Page 9 of 22
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
A B A OR B
Your notes
0 0 0
0 1 1
1 0 1
1 1 1
NOT
Circuit symbol Truth Table
Page 10 of 22
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
A NOT
Your notes
0 1
1 0
XOR (exclusive)
Circuit symbol Truth Table
Page 11 of 22
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
A B A XOR B
Your notes
0 0 0
0 1 1
1 0 1
1 1 0
Page 12 of 22
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
A B NOT (A AND B)
Your notes
0 0 1
0 1 1
1 0 1
1 1 0
Page 13 of 22
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
A B NOT (A OR B)
Your notes
0 0 1
0 1 0
1 0 0
1 1 0
A B C
0 0 0
0 0 1
0 1 0
0 1 1
Page 14 of 22
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
1 0 0
Your notes
1 0 1
1 1 0
1 1 1
Add a new column to show the results of the brackets first (A AND B)
A B C A AND B
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 0
1 0 0 0
1 0 1 0
1 1 0 1
1 1 1 1
A B C A AND B NOT C
0 0 0 0 1
0 0 1 0 0
Page 15 of 22
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
0 1 0 0 1
Your notes
0 1 1 0 0
1 0 0 0 1
1 0 1 0 0
1 1 0 1 1
1 1 1 1 0
The last column shows the result of the Boolean expression (P) by comparing (A AND B) AND NOT C //
(A . B ) . C
A B C A AND B NOT C P
0 0 0 0 1 0
0 0 1 0 0 0
0 1 0 0 1 0
0 1 1 0 0 0
1 0 0 0 1 0
1 0 1 0 0 0
1 1 0 1 1 1
1 1 1 1 0 0
It is possible to create a truth table when combining expressions that show only the inputs and the
final outputs.
Your notes
The inclusion of the extra columns supports the process but can be skipped if you feel able to do
those in your head as you go.
Page 17 of 22
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Logic Expressions
Your notes
Logic Expressions
A logic expression is a way of expressing a logic gate or logic circuit as an equation
The output appears on the left of the equals sign with the inputs and logic gates on the right
NOT A Z Z = NOT A
0 1
1 0
Page 18 of 22
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
AND A B Z Z = A AND B
Your notes
0 0 0
0 1 0
1 0 0
1 1 1
OR A B Z Z = A OR B
0 0 0
0 1 1
1 0 1
1 1 1
NAND A B Z Z = A NAND B
0 0 1
0 1 1
1 0 1
1 1 0
Page 19 of 22
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
NOR A B Z Z = A NOR B
Your notes
0 0 1
0 1 0
1 0 0
1 1 0
XOR A B Z Z = A XOR B
0 0 0
0 1 1
1 0 1
1 1 0
Logic circuits containing multiple gates can also be expressed as logic expressions/statements
An example logic circuit containing two inputs
The logic circuit above can be expressed as the logic expression Q= NOT(A OR B)
Page 20 of 22
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
The logic circuit above can be expressed as the logic expression Q= (NOT A) AND B
The logic circuit above can be expressed as the logic expression P = ((NOT A) OR B) NAND C
Page 21 of 22
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to www.savemyexams.com for more awesome resources
Your notes
Worked Example
Consider the logic statement: X = (((A AND B) OR (C AND NOT B)) XOR NOT C)
a. Draw a logic circuit to represent the given logic statement. [6]
Answer
One mark per correct logic gate, with the correct input
Page 22 of 22
© 2015-2024 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers