IGCSE Computer Science (0478) – Concise Revision Notes
How to use these notes
- Read each section once for a quick overview.
- Use the bullet‑point “Key facts for the exam” boxes to focus revision.
- Practice the example SQL, algorithm and programming snippets – they are the exact style asked in Paper 2.
- Keep the summary tables handy for quick recall of conversions, data‑type sizes and normalisation rules.
1. Data Representation
1.1 Number systems
| System | Base | Digits used | Typical use |
| Binary | 2 | 0, 1 | All computer data |
| Octal | 8 | 0‑7 | Compact binary view (group 3 bits) |
| Decimal | 10 | 0‑9 | Human‑readable numbers |
| Hexadecimal | 16 | 0‑9, A‑F | Compact binary view (group 4 bits) |
Conversion cheat‑sheet
- Binary → Decimal: add powers of 2 for each ‘1’.
- Decimal → Binary: divide by 2, record remainders (read upwards).
- Binary ↔ Hex: group bits in sets of 4 (add leading 0s if needed).
Two’s‑complement (signed integers)
- Positive numbers = normal binary.
- Negative number = invert all bits, add 1.
- Range for n‑bit word: –2ⁿ⁻¹ … 2ⁿ⁻¹ – 1.
Logical shifts
<< (left shift) = multiply by 2ⁿ (fill with 0s).
>> (right shift) = integer division by 2ⁿ (fill with sign bit for arithmetic shift).
Key facts for the exam
- Remember the binary‑to‑hex mapping (0000 = 0, 0001 = 1, … 1111 = F).
- Two’s‑complement overflow occurs when the sign bit changes unexpectedly.
- Logical shift left by 1 is equivalent to “multiply by 2”.
1.2 Text, sound and images
| Data type | Common encoding | Key parameters |
| Text | ASCII (7‑bit), Unicode (UTF‑8/16) | 1 char = 1 byte (ASCII) or 1‑4 bytes (Unicode) |
| Sound | Pulse‑code modulation (PCM) | Sample rate (Hz) × Bit depth (bits) × Channels ÷ 8 = KB/s |
| Images | Bitmap (pixel‑by‑pixel) | Resolution (pixels) × Colour depth (bits) ÷ 8 = KB per line |
Example calculation – A 44 kHz, 16‑bit stereo audio file lasting 10 s:
44 000 samples/s × 16 bits × 2 channels = 1 408 000 bits/s
1 408 000 ÷ 8 = 176 000 bytes/s ≈ 172 KB/s
172 KB/s × 10 s = 1 720 KB ≈ 1.68 MB
Compression
- Lossless (e.g., ZIP, PNG) – original data can be perfectly reconstructed.
- Lossy (e.g., MP3, JPEG) – some data discarded; smaller files but quality loss.
Key facts for the exam
- 1 byte = 8 bits; 1 KB = 1024 bytes; 1 MB = 1024 KB, etc.
- File‑size = (sample rate × bit depth × channels × duration) ÷ 8.
- Colour depth of 24‑bit = 16 777 216 possible colours.
1.3 Data storage units & prefixes
- Bit (b) – smallest unit.
- Byte (B) – 8 bits.
- Kibi‑byte (KiB) = 2¹⁰ = 1024 B; Mebi‑byte (MiB) = 2²⁰ B; Gibi‑byte (GiB) = 2³⁰ B.
- Decimal prefixes (kB, MB, GB) are used by hard‑disk manufacturers; remember the conversion difference for exam questions.
2. Data Transmission
2.1 Network basics
- Packet‑switched network – data broken into packets, each routed independently.
- Circuit‑switched network – a dedicated path is reserved for the duration of a call.
- Common topologies: star, bus, ring, mesh.
2.2 Common transmission media
| Medium | Typical speed | Pros | Cons |
| Copper (twisted‑pair, coax) | 10 Mbps – 10 Gbps | Cheap, easy to install | Susceptible to EMI, limited distance |
| Fiber‑optic | 100 Mbps – 100 Gbps+ | Very high bandwidth, immune to EMI | Expensive, fragile |
| Wireless (Wi‑Fi, Bluetooth, 4G/5G) | 11 Mbps – 10 Gbps | Mobility, no cables | Interference, security concerns |
2.3 Error detection & correction
- Parity bit – simple even/odd check; detects single‑bit errors.
- Checksum – sum of data bytes; detects many errors but not all.
- CRC (Cyclic Redundancy Check) – polynomial division; widely used in networking.
2.4 Basic encryption concepts
- Symmetric key – same key for encryption and decryption (e.g., AES).
- Public‑key (asymmetric) – pair of keys; one public, one private (e.g., RSA).
- For the IGCSE you only need to know the purpose: protect confidentiality and verify integrity.
Key facts for the exam
- Packet = header + payload + trailer.
- Parity can only detect an odd number of flipped bits.
- Wi‑Fi uses the 2.4 GHz or 5 GHz radio bands; Bluetooth ≈ 2.4 GHz but lower power.
3. Data Processing & Computer Architecture
3.1 The CPU
- ALU (Arithmetic Logic Unit) – performs arithmetic and logical operations.
- Control Unit – fetches, decodes and executes instructions.
- Registers – very fast storage inside the CPU (e.g., ACC, PC, IR).
- Cache – small, high‑speed memory that stores frequently used data.
3.2 Memory hierarchy
| Level | Typical size | Speed (relative) | Cost per MB |
| Registers | few KB | fastest | Very high |
| Cache (L1/L2) | tens‑to‑hundreds KB | very fast | High |
| RAM (Main memory) | 4 GB – 64 GB | fast | Medium |
| Secondary storage (HDD/SSD) | 250 GB – 4 TB | slow | Low |
3.3 Input/Output and buses
- Bus – set of electrical pathways that transfer data between CPU, memory and peripherals.
- Interrupt – signal that temporarily halts the CPU’s current task to service a device.
- Common I/O devices: keyboard, mouse, scanner, printer, monitor (output), microphone (input).
Key facts for the exam
- CPU fetch‑decode‑execute cycle repeats for each instruction.
- Cache reduces the average time to access data from main memory.
- Interrupts improve efficiency by allowing the CPU to respond only when needed.
4. Computer Systems & Software
4.1 System components
- Motherboard – holds CPU, RAM, expansion slots, and connectors.
- Power Supply Unit (PSU) – converts mains AC to low‑voltage DC.
- BIOS/UEFI – firmware that performs POST and boots the OS.
- Peripheral devices – connected via USB, HDMI, Ethernet, etc.
4.2 Types of software
| Category | Purpose | Examples |
| System software | Manage hardware & provide platform | Operating System (Windows, macOS, Linux) |
| Application software | Perform specific user tasks | Word processor, spreadsheet, web browser |
| Utility software | Maintain, protect & optimise the system | Antivirus, backup, disk‑defragmenter |
4.3 Security basics
- Authentication – verifying identity (passwords, biometrics).
- Authorization – defining what an authenticated user may do.
- Encryption – converting data to unreadable form without a key.
- Malware – viruses, worms, trojans; protect with anti‑virus and regular updates.
Key facts for the exam
- BIOS/UEFI runs before the OS and performs the Power‑On Self‑Test (POST).
- Operating systems manage multitasking, memory allocation and file systems.
- Strong passwords should be at least 8 characters, mix of letters, numbers and symbols.
5. Algorithms & Problem Solving
5.1 What is an algorithm?
A finite, ordered set of instructions that solves a problem or performs a task.
5.2 Flowchart symbols (exam‑required)
| Symbol | Name | Meaning |
| ▭ | Process | Action or operation (e.g., calculation) |
| ▱ | Input/Output | Read or display data |
| ◆ | Decision | Yes/No test (branch) |
| ⭮ | Loop/Connector | Repeat or link parts of the chart |
5.3 Basic algorithmic constructs
- Sequence – one step after another.
- Selection –
IF … THEN … ELSE … (decision).
- Iteration –
WHILE or FOR loops.
5.4 Example: Find the largest of three numbers
START
READ a, b, c
SET max = a
IF b > max THEN SET max = b
IF c > max THEN SET max = c
OUTPUT max
END
5.5 Searching & sorting (paper 2 basics)
- Linear search – examine each record until a match is found (O(n)).
- Binary search – repeatedly halve a sorted list (O(log n)).
- Bubble sort – repeatedly swap adjacent out‑of‑order items (O(n²)).
Key facts for the exam
- All algorithms must terminate – no infinite loops.
- Complexity notation: O(n) = linear, O(log n) = logarithmic, O(n²) = quadratic.
- Flowcharts must have a single start and a single end.
6. Programming (Python‑style pseudocode)
6.1 Variables & data types
INTEGER – whole numbers.
REAL – numbers with a decimal point.
STRING – text enclosed in quotes.
BOOLEAN – TRUE or FALSE.
6.2 Control structures
# Selection
IF condition THEN
… # statements
ELSE
… # statements
END IF
# Loop – count controlled
FOR i FROM 1 TO 10
… # statements
END FOR
# Loop – condition controlled
WHILE condition
… # statements
END WHILE
6.3 Common operators
| Operator | Name | Example |
| + | Addition / Concatenation | 5 + 3 = 8; "Hi" + "!" = "Hi!" |
| - | Subtraction | 10 - 4 = 6 |
| * | Multiplication | 7 * 2 = 14 |
| / | Division (real result) | 7 / 2 = 3.5 |
| // | Integer division | 7 // 2 = 3 |
| % | Modulo (remainder) | 7 % 2 = 1 |
| ==, !=, <, >, <=, >= | Comparison | a == b |
| AND, OR, NOT | Logical | (a > 0) AND (b < 5) |
6.4 Example program – calculate average mark
READ mark1, mark2, mark3
SET total = mark1 + mark2 + mark3
SET average = total / 3
OUTPUT "Average =", average
Key facts for the exam
- Indentation is not required in the exam, but logical nesting must be clear.
- All variables must be declared before they are used (Paper 2).
- Remember the difference between integer division (
//) and real division (/).
7. Databases – Primary Keys, Foreign Keys & SQL
7.1 What is a database?
A structured collection of related data stored in tables. Each table holds records (rows) and fields (columns).
7.2 Primary key – purpose & properties
- Uniqueness – no two records share the same key value.
- Non‑null – every record must contain a value.
- Immutability – the value should never change once assigned.
- Reference point – other tables link to it via foreign keys.
- Performance – DBMS automatically creates an index on the primary key.
7.3 Choosing a good primary key
| Criterion | Good example | Poor example |
| Unique & permanent | StudentID (auto‑increment integer) | Full name (may duplicate) |
| Simple & minimal | ISBN (13‑digit) | Combination of title + author + publisher |
| Immutable | EmployeeNumber | Address (can change) |
7.4 Composite (compound) primary keys
Used when a single field cannot guarantee uniqueness.
CREATE TABLE Enrolments (
StudentID INT NOT NULL,
CourseCode CHAR(6) NOT NULL,
EnrolDate DATE NOT NULL,
PRIMARY KEY (StudentID, CourseCode) -- composite key
);
Here a student may enrol in many courses, but the pair (StudentID, CourseCode) is unique.
7.5 Surrogate (system‑generated) keys
- Auto‑increment integer or UUID.
- Used when no natural field satisfies all primary‑key rules.
7.6 Foreign keys – linking tables
ALTER TABLE Enrolments
ADD CONSTRAINT FK_Student
FOREIGN KEY (StudentID) REFERENCES Students(StudentID);
Diagram (textual):
+----------------+ +----------------+
| Students | | Enrolments |
|----------------| |----------------|
| PK StudentID |◄───────► | FK StudentID |
| FirstName | | PK CourseCode |
| LastName | | EnrolDate |
+----------------+ +----------------+
7.7 Basic SQL statements (Paper 2)
| Command | Purpose | Example |
SELECT … FROM … | Retrieve data | SELECT FirstName, LastName FROM Students; |
WHERE | Filter rows | SELECT * FROM Students WHERE Class = '10A'; |
ORDER BY | Sort results | … ORDER BY LastName ASC; |
GROUP BY | Group rows for aggregation | SELECT Class, COUNT(*) FROM Students GROUP BY Class; |
SUM, COUNT, AVG, MIN, MAX | Aggregate functions | SELECT SUM(Marks) FROM Results; |
INSERT INTO … VALUES … | Add a new record | INSERT INTO Students VALUES (101, 'Ada', 'Lovelace', '2005-12-10', '10A'); |
UPDATE … SET … WHERE … | Modify existing records | UPDATE Students SET Class='11B' WHERE StudentID=101; |
DELETE FROM … WHERE … | Remove records | DELETE FROM Enrolments WHERE StudentID=101 AND CourseCode='CS101'; |
7.8 Normalisation – 1NF & 2NF (exam level)
- First Normal Form (1NF) – each field contains atomic (indivisible) values; no repeating groups.
- Second Normal Form (2NF) – table is in 1NF and every non‑key field depends on the whole primary key (eliminate partial dependency).
Example – splitting a non‑normalised Orders table:
Orders (OrderID, CustomerName, CustomerPhone, Product1, Product2, …)
→
Customers (CustomerID, CustomerName, CustomerPhone)
Orders (OrderID, CustomerID, OrderDate)
OrderLines(OrderID, ProductCode, Quantity)
Key facts for the exam
- Primary key = unique identifier; must be NOT NULL and immutable.
- Composite key = two or more fields together uniquely identify a record.
- Foreign key = field (or fields) that reference a primary key in another table.
- SQL statements required for Paper 2:
SELECT, FROM, WHERE, ORDER BY, GROUP BY, INSERT, UPDATE, DELETE, plus aggregate functions.
- Normalization reduces redundancy; remember the “one fact per table” rule.
8. Impacts of Digital Technology
8.1 Ethical & legal issues
- Copyright – creators own the exclusive right to reproduce their work.
- Data protection – personal data must be stored securely and used only with consent (GDPR‑style principles).
- Computer misuse – unauthorised access, hacking, phishing.
8.2 Environmental considerations
- E‑waste – hazardous chemicals; importance of recycling.
- Energy consumption – servers, data centres; green computing practices.
8.3 Social & economic impact
- Digital divide – unequal access to technology.
- Automation – can increase productivity but may reduce certain jobs.
- Globalisation – easier communication, but also raises security concerns.
Key facts for the exam
- Give one advantage and one disadvantage of a technology (e.g., “smartphones: advantage = instant communication; disadvantage = privacy risk”).
- Explain why strong passwords and regular backups are part of good digital citizenship.
9. Quick Revision Checklist
| Topic | Must‑know items |
| Number systems & binary arithmetic |
Conversions, two’s‑complement range, logical shifts. |
| Text, sound, images |
ASCII vs Unicode, sample rate & bit depth, pixel resolution, lossless vs lossy compression. |
| Data storage units |
Bit, byte, KiB, MiB, GiB; difference between decimal and binary prefixes. |
| Transmission media & error detection |
Packet structure, parity, checksum, CRC, basic encryption purpose. |
| CPU & memory hierarchy |
ALU, control unit, registers, cache, RAM, secondary storage. |
| System software |
BIOS/UEFI, OS functions, utility software, security basics. |
| Algorithms |
Flowchart symbols, sequence/selection/iteration, O‑notation, example searches/sorts. |
| Programming |
Variables, data types, operators, IF/ELSE, FOR/WHILE loops, basic I/O. |
| Databases |
Primary key rules, composite vs surrogate keys, foreign keys, basic SQL syntax, 1NF/2NF. |
| Impacts of technology |
Ethical/legal issues, environmental effects, social/economic consequences. |
10. Final Tips for the IGCSE Exam
- Read the question carefully – note which part of the syllabus is being tested (Paper 1 theory vs Paper 2 practical).
- When writing SQL or pseudocode, keep it tidy: one command per line, proper indentation, and end each statement with a semicolon (SQL) or
END (pseudocode).
- For diagram questions (e.g., ER diagrams, flowcharts), label every element clearly and use the standard symbols.
- Time‑management: allocate roughly 15 minutes per short‑answer question, leaving 10 minutes at the end for review.
- Practice past papers under timed conditions – the more you write, the more comfortable you’ll become with the exam language.