Every student sits Unit 1. Then you pick one route: Multimedia (Units 2 & 3) or Programming (Units 4 & 5). Pick your route below to filter the revision topics. Your choice is saved to this device.
Hardware is the physical components of a computer that you can touch (e.g. monitor, keyboard, CPU, RAM).
Software is the programs and instructions that tell the hardware what to do. Software is intangible.
| Component | Purpose |
|---|---|
| CPU (Central Processing Unit) | The "brain" of the computer. Processes instructions and performs calculations. |
| RAM | Temporary, fast memory that holds currently running programs and data. Volatile (lost when power off). |
| Motherboard | The main circuit board that connects all components together. |
| PSU (Power Supply Unit) | Converts mains electricity to the voltages needed by computer components. |
| GPU (Graphics Processing Unit) | Processes and renders images, video, and animations for the display. |
An input device sends data INTO the computer.
| Device | Use |
|---|---|
| Keyboard | Entering text and commands |
| Mouse / Trackpad | Pointing, clicking, selecting |
| Microphone | Recording sound, voice input |
| Scanner | Digitising paper documents/photos |
| Webcam / Camera | Capturing images/video |
| Barcode reader | Reading barcodes (e.g. at supermarket checkout) |
| Touchscreen | Input by touching the display (also an output device) |
An output device presents data FROM the computer to the user.
| Device | Use |
|---|---|
| Monitor / Screen | Displaying visual output |
| Printer | Producing hard copy on paper |
| Speakers / Headphones | Producing sound output |
| Projector | Displaying images on a large surface |
| Device | Type | Features |
|---|---|---|
| HDD (Hard Disk Drive) | Magnetic | Large capacity, cheap per GB, slower, moving parts (can break) |
| SSD (Solid State Drive) | Flash memory | Very fast, no moving parts (durable), more expensive per GB |
| USB flash drive | Flash memory | Portable, small capacity, plug-and-play |
| Optical disc (CD/DVD/Blu-ray) | Optical | Cheap, portable, limited capacity, slower access |
| Cloud storage | Remote server | Access anywhere, requires internet, ongoing cost |
Computers use binary (0s and 1s) because their electronic circuits have two states: on (1) and off (0). All data - text, images, sound - must be converted to binary for the computer to process it.
| Unit | Size |
|---|---|
| Bit | A single binary digit (0 or 1) |
| Nibble | 4 bits |
| Byte | 8 bits |
| Kilobyte (KB) | 1,024 bytes |
| Megabyte (MB) | 1,024 KB |
| Gigabyte (GB) | 1,024 MB |
| Terabyte (TB) | 1,024 GB |
Use the place value table to convert between binary and denary:
| 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
|---|
Example: Binary 10101100 = 128 + 32 + 8 + 4 = 172
Text is stored using ASCII codes - each character has a number (e.g. A=65, B=66, a=97).
A network is two or more devices connected together to share data and resources.
| Wired | Wireless | |
|---|---|---|
| Speed | Generally faster and more reliable | Slower, affected by interference/distance |
| Security | More secure (physical connection needed) | Less secure (signals can be intercepted) |
| Mobility | Devices must stay near cable points | Users can move freely |
| Cost | Cabling is expensive to install | Cheaper to set up, fewer cables |
A spreadsheet organises data in rows and columns of cells. Each cell has a cell reference (e.g. B3).
| Feature | Description | Example |
|---|---|---|
| Formula | A calculation using cell references | =B2*C2 |
| Function | A built-in calculation | =SUM(B2:B10), =AVERAGE(C2:C20), =MAX(), =MIN(), =COUNT(), =IF() |
| Absolute reference | A cell reference that does not change when copied (uses $) | =$B$1 |
| Relative reference | A cell reference that adjusts when copied | =B1 (changes to =B2, =B3 etc.) |
| Charts | Visual representation of data | Bar chart, pie chart, line graph |
| Sort | Arranging data in order | Alphabetical, numerical, ascending/descending |
| Filter | Displaying only data that meets certain criteria | Show only Year 10 students |
A database is an organised collection of related data. A flat file database stores all data in a single table. A relational database uses multiple linked tables to reduce data redundancy.
HTML defines the structure and content of a web page using tags.
<!DOCTYPE html> <html> <head> <title>My Page</title> </head> <body> <h1>Welcome</h1> <p>This is a paragraph.</p> <img src="photo.jpg" alt="A photo"> <a href="page2.html">Click here</a> </body> </html>
CSS controls the appearance and layout of the web page (colours, fonts, spacing, positioning).
body { background-color: #1a1a2e; color: white; font-family: Arial; } h1 { color: #e94560; text-align: center; }
HTML = structure/content (WHAT is on the page). CSS = presentation/style (HOW it looks).
| Principle | Definition | Example |
|---|---|---|
| Decomposition | Breaking a complex problem into smaller, manageable sub-problems | Planning a school event: break into venue, invitations, catering, entertainment |
| Pattern recognition | Identifying similarities or trends within and between problems | Noticing that sorting a list of names uses the same logic as sorting numbers |
| Abstraction | Removing unnecessary detail to focus on the important information | A London Underground map abstracts the physical geography to show only stations and connections |
| Algorithmic thinking | Developing a step-by-step solution (algorithm) to solve the problem | Writing pseudocode or a flowchart for making a cup of tea |
The Data Protection Act 2018 controls how personal data is collected, stored, and used. Organisations must:
Individuals have the right to see what data is held about them (Subject Access Request) and to have inaccurate data corrected.
The Copyright, Designs and Patents Act 1988 protects creators' work. You must not copy, download, or share software, music, images, or text without permission. Creative Commons licences allow some sharing with conditions.
The Computer Misuse Act 1990 makes it illegal to access computers without permission, hack systems, or create/distribute malware.
Pseudocode is a way of writing algorithms in structured English that resembles code but is not tied to any programming language. It is used to plan programs before writing actual code.
Flowcharts use standard symbols to represent the steps in an algorithm visually:
| Symbol | Name | Purpose |
|---|---|---|
| Rounded rectangle | Terminator | Start or End of the algorithm |
| Rectangle | Process | An instruction or action (e.g. calculate total) |
| Diamond | Decision | A question with Yes/No paths (selection) |
| Parallelogram | Input/Output | Getting data in or displaying data out |
| Arrow | Flow line | Shows direction of flow between steps |
A variable is a named storage location in memory that holds a value which can change during the program. A constant is a named value that does not change.
| Data Type | Description | Example |
|---|---|---|
| Integer | Whole number | 42, -7, 0 |
| Real / Float | Decimal number | 3.14, -0.5 |
| String | Text (sequence of characters) | "Hello", "GCSE" |
| Boolean | True or False | TRUE, FALSE |
| Character | A single letter, digit or symbol | 'A', '7', '#' |
Sequence - instructions are executed one after another in order:
SET price TO 10 SET quantity TO 3 SET total TO price * quantity OUTPUT total
Selection - the program chooses a path based on a condition (IF...THEN...ELSE):
INPUT age IF age >= 18 THEN OUTPUT "You can vote" ELSE OUTPUT "You are too young to vote" ENDIF
Iteration - repeating a block of code. There are three types:
// Print numbers 1 to 5 FOR i FROM 1 TO 5 OUTPUT i ENDFOR
SET password TO "" WHILE password != "secret123" INPUT password ENDWHILE OUTPUT "Access granted"
REPEAT INPUT number UNTIL number >= 1 AND number <= 100
An array (or list) is a data structure that stores multiple values of the same type under one name. Each item is accessed using an index (position number, usually starting from 0).
SET names TO ["Alice", "Bob", "Charlie"] OUTPUT names[0] // Outputs "Alice" OUTPUT names[2] // Outputs "Charlie" // Loop through all items in the array FOR i FROM 0 TO 2 OUTPUT names[i] ENDFOR
A procedure is a named block of code that performs a task. It does NOT return a value.
A function is a named block of code that performs a task and RETURNS a value.
// Procedure - no return value PROCEDURE greetUser(name) OUTPUT "Hello, " + name ENDPROCEDURE // Function - returns a value FUNCTION calculateArea(length, width) RETURN length * width ENDFUNCTION SET area TO calculateArea(5, 3) OUTPUT area // Outputs 15
Validation checks that data entered is reasonable and follows rules (done by the computer). Verification checks that data is entered correctly (done by the user or by double entry).
| Validation Check | What It Does | Example |
|---|---|---|
| Range check | Data is within a set range | Age must be between 0 and 120 |
| Length check | Data has the correct number of characters | Password must be at least 8 characters |
| Presence check | Data has been entered (not blank) | Name field must not be empty |
| Type check | Data is the correct data type | Age must be an integer |
| Format check | Data matches a required pattern | Postcode must be in the format AA9 9AA |
// Validation example: range check REPEAT OUTPUT "Enter a mark (0-100):" INPUT mark IF mark < 0 OR mark > 100 THEN OUTPUT "Invalid. Try again." ENDIF UNTIL mark >= 0 AND mark <= 100
A trace table is used to track the values of variables as a program executes, line by line. It helps you find logic errors (dry-running).
Example - trace this code:
SET x TO 1 SET total TO 0 WHILE x <= 4 SET total TO total + x SET x TO x + 1 ENDWHILE OUTPUT total
| x | total | x <= 4? |
|---|---|---|
| 1 | 0 | Yes |
| 2 | 1 | Yes |
| 3 | 3 | Yes |
| 4 | 6 | Yes |
| 5 | 10 | No |
Output: 10
Checks each item in a list one by one until the target is found or the end is reached. Works on unsorted data.
FUNCTION linearSearch(list, target) FOR i FROM 0 TO LENGTH(list) - 1 IF list[i] == target THEN RETURN i // Found at index i ENDIF ENDFOR RETURN -1 // Not found ENDFUNCTION
Repeatedly steps through the list, compares adjacent items and swaps them if they are in the wrong order. Passes continue until no swaps are needed.
PROCEDURE bubbleSort(list) SET n TO LENGTH(list) FOR i FROM 0 TO n - 2 FOR j FROM 0 TO n - i - 2 IF list[j] > list[j+1] THEN // Swap the items SET temp TO list[j] SET list[j] TO list[j+1] SET list[j+1] TO temp ENDIF ENDFOR ENDFOR ENDPROCEDURE
| Flat File Database | Relational Database | |
|---|---|---|
| Structure | All data in a single table | Data split across multiple linked tables |
| Redundancy | Data is often repeated (redundant) | Data duplication is minimised |
| Inconsistency | Repeated data can become inconsistent | Changes in one place update everywhere |
| Complexity | Simple to set up and use | More complex but more powerful |
| Example | A single CSV file of student data | Separate Students, Courses, and Enrolments tables |
| Data Type | Stores | Example Field |
|---|---|---|
| Text / Varchar | Letters, numbers, symbols | Name, Address |
| Integer | Whole numbers | Age, Quantity |
| Real / Decimal | Numbers with decimal places | Price, Average |
| Boolean | Yes/No, True/False | HasPaid, IsActive |
| Date/Time | Dates and/or times | DateOfBirth, OrderDate |
SQL (Structured Query Language) is used to query and manage data in relational databases.
-- Select all fields from the Students table SELECT * FROM Students; -- Select specific fields SELECT FirstName, Surname FROM Students; -- With a condition SELECT * FROM Students WHERE YearGroup = 11; -- Multiple conditions using AND / OR SELECT FirstName, Surname FROM Students WHERE YearGroup = 11 AND Gender = 'F'; SELECT * FROM Products WHERE Price < 10 OR Category = 'Sale';
-- Sort results alphabetically by Surname SELECT * FROM Students ORDER BY Surname ASC; -- Sort by Price, highest first SELECT ProductName, Price FROM Products ORDER BY Price DESC;
Normalisation is the process of organising data to reduce redundancy and improve data integrity. At GCSE level, you should understand:
An ERD shows how tables (entities) are related. The three relationship types are:
| Relationship | Meaning | Example |
|---|---|---|
| One-to-One (1:1) | Each record in Table A relates to exactly one record in Table B | One student has one student ID card |
| One-to-Many (1:M) | One record in Table A relates to many records in Table B | One teacher teaches many classes |
| Many-to-Many (M:M) | Many records in Table A relate to many in Table B (resolved with a linking table) | Students enrol in many courses; each course has many students |
The TCP/IP model is a set of layered protocols that governs how data is transmitted across networks and the internet. It has 4 layers:
| Layer | Name | Role | Protocols |
|---|---|---|---|
| 4 (Top) | Application | Provides network services to the user (web, email, file transfer) | HTTP, HTTPS, FTP, SMTP, POP3, IMAP |
| 3 | Transport | Ensures reliable data delivery; splits data into segments | TCP, UDP |
| 2 | Internet | Addresses and routes packets across networks | IP |
| 1 (Bottom) | Network Interface | Handles physical transmission of data on the local network | Ethernet, Wi-Fi |
| Protocol | Full Name | Purpose |
|---|---|---|
| HTTP | HyperText Transfer Protocol | Transfers web pages (not encrypted) |
| HTTPS | HTTP Secure | Encrypted version of HTTP (uses SSL/TLS) |
| FTP | File Transfer Protocol | Uploading/downloading files to/from a server |
| SMTP | Simple Mail Transfer Protocol | Sending email |
| POP3 | Post Office Protocol v3 | Receiving email (downloads and removes from server) |
| IMAP | Internet Message Access Protocol | Receiving email (keeps email on server, syncs across devices) |
| TCP | Transmission Control Protocol | Reliable delivery - checks all packets arrive and reassembles them in order |
| UDP | User Datagram Protocol | Faster but unreliable - no error checking (used for streaming, gaming) |
| IP | Internet Protocol | Addresses packets and routes them to the correct destination |
When data is sent across a network, it is broken into small packets. Each packet contains:
Packets may take different routes across the network and arrive out of order. The receiving device uses TCP to reassemble them in the correct order. If any packets are missing, they are requested again.
An IP address is a unique numerical address assigned to every device on a network. IPv4 addresses have 4 groups of numbers separated by dots, e.g. 192.168.1.25
A MAC (Media Access Control) address is a unique hardware identifier burned into every network interface card (NIC). It is 48 bits long, written as 6 pairs of hexadecimal digits, e.g. A4:5E:60:B2:F1:C8
The DNS translates human-readable domain names (e.g. www.google.com) into IP addresses (e.g. 142.250.187.206) that computers use to route data.
How DNS works:
| Client-Server | Peer-to-Peer (P2P) | |
|---|---|---|
| Structure | Central server provides services to client devices | All devices are equal; each can be client and server |
| Security | Centrally managed, more secure | Each device manages its own security, less secure |
| Backup | Centralised backup on server | Each device responsible for its own backup |
| Cost | Expensive (dedicated server hardware and admin) | Cheaper (no dedicated server needed) |
| Scalability | Scales well with more clients | Performance drops as more devices join |
| Example | School network, websites, email | BitTorrent file sharing, small home networks |
Encryption is the process of converting plaintext into ciphertext (unreadable form) to protect data. Only someone with the correct key can decrypt it.
| Symmetric Encryption | Asymmetric Encryption | |
|---|---|---|
| Keys | Same key used to encrypt and decrypt | Two different keys: a public key (to encrypt) and a private key (to decrypt) |
| Speed | Faster | Slower |
| Key sharing | Key must be shared securely (risk if intercepted) | Public key can be shared openly; only the private key must be kept secret |
| Example use | Encrypting files on a hard drive | HTTPS, email encryption, digital signatures |
The Caesar cipher is a simple substitution cipher where each letter is shifted by a fixed number of positions. It is a symmetric cipher (same key to encrypt and decrypt).
// Caesar cipher with shift of 3 Plaintext: HELLO WORLD Ciphertext: KHOOR ZRUOG // Each letter shifted 3 places forward: H -> K, E -> H, L -> O, L -> O, O -> R W -> Z, O -> R, R -> U, L -> O, D -> G
HTTPS uses SSL/TLS (Secure Sockets Layer / Transport Layer Security) to encrypt data between your browser and the web server. The process:
A digital certificate proves the identity of a website. It is issued by a Certificate Authority (CA) and contains the website's public key, the domain name, the CA's signature, and an expiry date. Your browser checks the certificate to ensure you are connected to the genuine website (not an impersonator).
| Hashing | Encryption | |
|---|---|---|
| Direction | One-way (cannot be reversed) | Two-way (can be decrypted with a key) |
| Purpose | Verify data integrity, store passwords | Protect data confidentiality during transmission or storage |
| Output | Fixed-length hash value (digest) | Ciphertext (same length as plaintext) |
| Example | SHA-256 hash of a password | AES encryption of a file |
| Method | How It Works | Strengths / Weaknesses |
|---|---|---|
| Passwords | User enters a secret word/phrase | Easy to implement; can be weak, guessed, or stolen |
| Biometrics | Uses physical traits (fingerprint, face, iris, voice) | Unique to each person and hard to fake; expensive; cannot be changed if compromised |
| Two-Factor Authentication (2FA) | Requires two different types of proof (e.g. password + SMS code) | Much more secure; even if password is stolen, attacker needs the second factor |
The three authentication factors are: something you know (password, PIN), something you have (phone, smart card), something you are (biometric).
| Type | What It Does | How It Spreads |
|---|---|---|
| Virus | Attaches to a file; damages/deletes data or corrupts the system | Spread when infected files are opened or shared |
| Worm | Self-replicates and spreads across networks without user action | Exploits network vulnerabilities automatically |
| Trojan | Disguises itself as legitimate software; creates a backdoor | Downloaded by the user thinking it is safe software |
| Ransomware | Encrypts victim's files; demands payment for the decryption key | Phishing emails, malicious downloads |
| Spyware | Secretly monitors user activity (keystrokes, browsing, passwords) | Bundled with other software, malicious websites |
A firewall monitors and controls incoming and outgoing network traffic based on security rules. It acts as a barrier between a trusted internal network and untrusted external networks (the internet).
Social engineering tricks people into revealing confidential information or performing actions that compromise security. It targets human weaknesses rather than technical ones.
| Attack | Description |
|---|---|
| Phishing | Fake emails or messages pretending to be from a trusted source (e.g. bank), tricking users into clicking links or revealing passwords |
| Pharming | Redirecting a legitimate website's traffic to a fake website (by poisoning DNS records) to steal login credentials |
| Shoulder surfing | Watching someone enter their PIN, password, or other sensitive information |
| Pretexting | Creating a fabricated scenario (e.g. pretending to be IT support) to trick someone into giving access or information |
Binary addition follows the same rules as denary but with only 0 and 1:
| Rule | Result |
|---|---|
| 0 + 0 | 0 |
| 0 + 1 | 1 |
| 1 + 0 | 1 |
| 1 + 1 | 10 (write 0, carry 1) |
| 1 + 1 + 1 | 11 (write 1, carry 1) |
Add 01101010 (106) + 00110101 (53) 0 1 1 0 1 0 1 0 + 0 0 1 1 0 1 0 1 ----------------- 1 0 0 1 1 1 1 1 = 159 Carries: 0 1 1 0 0 1 1 0
Overflow occurs when the result of a binary addition is too large to be stored in the available number of bits. For example, with 8 bits the maximum unsigned value is 255 (11111111). Adding 200 + 100 = 300, which cannot fit in 8 bits - this causes an overflow error.
Hexadecimal (hex) is a base-16 number system using digits 0-9 and letters A-F. It is used as a shorthand for binary because it is more human-readable.
| Hex | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Denary | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| Binary | 0000 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 | 1000 | 1001 | 1010 | 1011 | 1100 | 1101 | 1110 | 1111 |
Split binary into nibbles (groups of 4), convert each to hex: Binary: 1010 1111 Hex: A F = AF Binary: 1100 0011 Hex: C 3 = C3
| ASCII | Unicode | |
|---|---|---|
| Bits per character | 7 bits (extended ASCII = 8 bits) | Up to 32 bits (UTF-8 uses 1-4 bytes) |
| Characters | 128 characters (English letters, digits, symbols) | Over 140,000 characters (all world languages, emoji) |
| File size | Smaller files | Larger files |
| Languages | English only | All languages worldwide |
Examples: ASCII code for 'A' = 65, 'a' = 97, '0' = 48, space = 32.
Digital images are made up of tiny dots called pixels. Each pixel stores colour information.
File size (bits) = width (pixels) x height (pixels) x colour depth (bits) Example: Image: 800 x 600 pixels, 24-bit colour depth File size = 800 x 600 x 24 = 11,520,000 bits = 11,520,000 / 8 = 1,440,000 bytes = 1,440,000 / 1024 = 1,406.25 KB = 1,406.25 / 1024 = 1.37 MB
Sound is analogue. To store it digitally, the sound wave is sampled at regular intervals.
File size (bits) = sample rate (Hz) x bit depth x duration (seconds) x channels Example: 30 seconds of CD-quality stereo sound File size = 44,100 x 16 x 30 x 2 = 42,336,000 bits = 42,336,000 / 8 = 5,292,000 bytes = 5,292,000 / 1024 = 5,168 KB = 5,168 / 1024 = 5.05 MB
Compression reduces file size for faster transmission and less storage space.
| Lossy Compression | Lossless Compression | |
|---|---|---|
| How it works | Permanently removes some data (e.g. sounds humans cannot hear) | Reduces file size without losing any data; original can be perfectly reconstructed |
| File size | Much smaller files | Smaller than original but larger than lossy |
| Quality | Some quality loss (usually not noticeable) | No quality loss |
| Image example | JPEG | PNG |
| Sound example | MP3 | WAV, FLAC |
| Best for | Photos, music, video (streaming, web) | Text files, medical images, professional audio |
The Von Neumann architecture is the design used by most modern computers. Its key feature is that both program instructions and data are stored together in main memory.
| Component | Full Name | Role |
|---|---|---|
| CU | Control Unit | Directs the operation of the CPU; fetches, decodes, and coordinates the execution of instructions |
| ALU | Arithmetic Logic Unit | Performs calculations (add, subtract, multiply, divide) and logical comparisons (AND, OR, NOT, greater than, equal to) |
| Accumulator | ACC | A register that temporarily stores the result of calculations performed by the ALU |
| MAR | Memory Address Register | Holds the address of the memory location currently being read from or written to |
| MDR | Memory Data Register | Holds the data that has been read from memory or is about to be written to memory |
| PC | Program Counter | Holds the address of the next instruction to be fetched |
The CPU continuously repeats this cycle to process every instruction:
| Factor | How It Affects Performance |
|---|---|
| Clock speed | Measured in GHz. Higher clock speed = more cycles per second = faster processing. A 3.5 GHz CPU executes 3.5 billion cycles per second. |
| Number of cores | Each core can process instructions independently. A quad-core CPU can handle 4 tasks simultaneously. More cores = better at multitasking (but software must be designed to use multiple cores). |
| Cache size | Cache is a small amount of very fast memory inside the CPU. Frequently used data/instructions are stored here. Larger cache = less need to fetch from slower RAM = faster performance. |
An embedded system is a computer system built into a larger device to perform a specific dedicated function. It is usually not a general-purpose computer.
| RAM (Random Access Memory) | ROM (Read Only Memory) | |
|---|---|---|
| Volatile? | Yes - contents lost when power is off | No - contents retained without power |
| Read/Write? | Can be read and written to | Can only be read (not written to in normal use) |
| Purpose | Stores currently running programs and data | Stores the boot-up instructions (BIOS/firmware) |
| Speed | Very fast | Slower than RAM |
| Size | Typically 8-32 GB in modern PCs | Very small (just enough for startup instructions) |
Virtual memory is a section of the hard drive/SSD that is used as if it were additional RAM when physical RAM is full.