Detailed Revision Notes: Cambridge IGCSE™ & O Level
Computer Science
Source: Watson, D. & Williams, H. (2021). Cambridge IGCSE™ and O Level Computer Science
(Second Edition). Hodder Education.
1. Number Systems
1.1 Binary, Denary, and Hexadecimal
· Binary (Base-2): Uses only digits 0 and 1. Fundamental to computers as they comprise millions of
on/off switches.
· Denary (Base-10): The standard human number system using digits 0-9.
· Hexadecimal (Base-16): Uses digits 0-9 and letters A-F. One hex digit represents four binary digits
(a nibble), making it a compact way to represent binary.
1.2 Conversions
· Binary ↔ Denary: Use place values (128, 64, 32, 16, 8, 4, 2, 1 for 8-bit) or successive
division/multiplication by 2.
· Binary ↔ Hexadecimal: Group binary digits into sets of four and convert each group to/from its
hex equivalent.
· Denary ↔ Hexadecimal: Use successive division/multiplication by 16.
1.3 Uses of Hexadecimal
· Error Codes: Memory location errors are often displayed in hex.
· MAC Addresses: Uniquely identifies a network device. Format: NN-NN-NN-DD-DD-DD
(Manufacturer Code - Device Code).
· IPv6 Addresses: 128-bit addresses represented in hex groups (e.g., a8fb:7a88...).
· HTML Colour Codes: Colours are defined by hex values representing Red, Green, and Blue
(RGB) intensity (e.g., #FF0000 is red).
1.4 Binary Arithmetic
· Addition: Rules similar to denary, but carry over when sum is 2 (binary 10).
· Overflow Error: Occurs when a calculation produces a result that is too large to be represented in
the allocated number of bits (e.g., a 9th bit in an 8-bit system).
1.5 Logical Shifts
· Left Shift: Equivalent to multiplying by 2. Bits move left; empty spaces filled with 0. A 1 shifted out
of the register is lost, potentially causing an error.
· Right Shift: Equivalent to integer division by 2. Bits move right; empty spaces filled with 0. A 1
shifted out is lost.
1.6 Two's Complement
· A method for representing negative integers in binary.
· The Most Significant Bit (MSB) represents a negative value (e.g., -128 in an 8-bit system).
· Range for 8-bit: -128 to +127.
· To Convert a Negative Denary Number:
1. Write the positive equivalent as a binary number.
2. Invert all the bits (change 1s to 0s and 0s to 1s).
3. Add 1 to the result.