Your journey to excellence in

GCSE Computer Science Revision

By Revision Genie

Genie
👋Let's master Computer Science together!
Master GCSE Computer Science with our AI revision tool, built by qualified computing teachers. Covering AQA, Edexcel, and OCR specifications, get instant help with programming concepts, algorithms, and theory topics. Our intelligent system breaks down complex coding problems and explains technical concepts in ways that make sense, not more confusion.
1

Decomposition: breaking problems into smaller parts

Click to generate questions
New
2

Abstraction: removing unnecessary detail

Click to generate questions
New
3

Using decomposition + abstraction to model real-world problems

Click to generate questions
New
4

Why subprograms help (reuse, readability, testing)

Click to generate questions
New
5

What an algorithm is (inputs, processing, outputs)

Click to generate questions
New
6

Flowcharts: reading and writing standard symbols

Click to generate questions
New
7

Pseudocode: writing clear, language-agnostic steps

Click to generate questions
New
8

Program code as an algorithm representation

Click to generate questions
New
9

Sequence: writing steps in the correct order

Click to generate questions
New
10

Selection: making decisions with conditions

Click to generate questions
New
11

Repetition: count-controlled looping

Click to generate questions
New
12

Repetition: condition-controlled looping

Click to generate questions
New
13

Iteration over a data structure (looping through items)

Click to generate questions
New
14

Variables and constants in algorithms

Click to generate questions
New
15

One-dimensional data structures in algorithms (arrays, strings)

Click to generate questions
New
16

Two-dimensional data structures in algorithms (2D arrays/tables)

Click to generate questions
New
17

Records as a way to group related fields

Click to generate questions
New
18

Arithmetic operators in algorithms (modulus, integer division, exponentiation)

Click to generate questions
New
19

Relational operators in algorithms (comparisons)

Click to generate questions
New
20

Logical operators in algorithms (AND, OR, NOT)

Click to generate questions
New
21

Trace tables: tracking variable values step-by-step

Click to generate questions
New
22

Predicting the output for given test data

Click to generate questions
New
23

Types of errors: syntax, runtime and logic

Click to generate questions
New
24

Finding and fixing logic errors in an algorithm

Click to generate questions
New
25

Linear search: how it works and when to use it

Click to generate questions
New
26

Binary search: how it works and when to use it

Click to generate questions
New
27

Bubble sort: how it works and how many passes it needs

Click to generate questions
New
28

Merge sort: splitting and merging step-by-step

Click to generate questions
New
29

Choosing test data (normal, boundary and erroneous)

Click to generate questions
New
30

Judging fitness for purpose using logical reasoning + test data

Click to generate questions
New
31

Comparing algorithm efficiency (compares, loop passes, memory use)

Click to generate questions
New
32

Truth tables with AND, OR, NOT (up to three inputs)

Click to generate questions
New
33

Using truth tables to solve logic problems

Click to generate questions
New
1

Why computers use binary for data and instructions

Click to generate questions
New
2

Counting states: how many values a bit pattern can represent

Click to generate questions
New
3

Unsigned integers in binary

Click to generate questions
New
4

Two’s complement signed integers: what it represents

Click to generate questions
New
5

Converting denary to 8-bit binary (0 to 255)

Click to generate questions
New
6

Converting denary to 8-bit binary with two’s complement (-128 to +127)

Click to generate questions
New
7

Converting binary back to denary (unsigned and signed)

Click to generate questions
New
8

Binary addition (positive numbers)

Click to generate questions
New
9

Logical shifts: shifting bits and the effect on values

Click to generate questions
New
10

Arithmetic shifts: preserving sign in signed numbers

Click to generate questions
New
11

Overflow: when values don’t fit the available bits

Click to generate questions
New
12

Why hexadecimal is useful

Click to generate questions
New
13

Converting binary ↔ hexadecimal

Click to generate questions
New
14

Character encoding with 7-bit ASCII

Click to generate questions
New
15

Bitmap images: pixels, resolution and colour depth

Click to generate questions
New
16

Calculating bitmap image file size

Click to generate questions
New
17

Analogue sound concepts: amplitude and sampling

Click to generate questions
New
18

Sound representation: sample rate, bit depth and sample interval

Click to generate questions
New
19

Calculating sound file size

Click to generate questions
New
20

Limits of representation when bits are constrained (rounding/precision)

Click to generate questions
New
21

Storage units in binary multiples (bit to tebibyte)

Click to generate questions
New
22

File size and storage capacity calculations

Click to generate questions
New
23

Why compression is needed (storage + transmission)

Click to generate questions
New
24

Lossless vs lossy compression: what changes and when to use each

Click to generate questions
New
25

Lossless compression example: Run-Length Encoding (RLE)

Click to generate questions
New
26

Lossless compression example: Huffman coding (basic idea and purpose)

Click to generate questions
New
1

The stored program concept (von Neumann idea)

Click to generate questions
New
2

The CPU’s role in processing and control

Click to generate questions
New
3

Control unit: what it does in a CPU

Click to generate questions
New
4

ALU: what it does in a CPU

Click to generate questions
New
5

Registers: why they’re fast and what they store

Click to generate questions
New
6

RAM: purpose and why it’s needed while programs run

Click to generate questions
New
7

The system clock: why clock speed matters

Click to generate questions
New
8

Address bus, data bus and control bus (what each carries)

Click to generate questions
New
9

Fetch stage of the fetch-decode-execute cycle

Click to generate questions
New
10

Decode stage of the fetch-decode-execute cycle

Click to generate questions
New
11

Execute stage of the fetch-decode-execute cycle

Click to generate questions
New
12

Secondary storage: why it’s needed (non-volatile storage)

Click to generate questions
New
13

Magnetic storage: how it stores data and typical uses

Click to generate questions
New
14

Optical storage: how it stores data and typical uses

Click to generate questions
New
15

Solid state storage: how it stores data and typical uses

Click to generate questions
New
16

Choosing storage: speed, capacity, portability and cost trade-offs

Click to generate questions
New
17

Embedded systems: what they are

Click to generate questions
New
18

Embedded systems: real-world uses and constraints

Click to generate questions
New
19

Operating system jobs: file management

Click to generate questions
New
20

Operating system jobs: process management

Click to generate questions
New
21

Operating system jobs: peripheral management

Click to generate questions
New
22

Operating system jobs: user management

Click to generate questions
New
23

Utility software: file repair

Click to generate questions
New
24

Utility software: backup (including why it matters)

Click to generate questions
New
25

Utility software: data compression tools (what they do)

Click to generate questions
New
26

Utility software: disk defragmentation (why it’s used)

Click to generate questions
New
27

Utility software: anti-malware (what it protects against)

Click to generate questions
New
28

Robust software: why it matters

Click to generate questions
New
29

Finding vulnerabilities using audit trails

Click to generate questions
New
30

Finding vulnerabilities using code reviews

Click to generate questions
New
31

Low-level vs high-level languages: characteristics and purpose

Click to generate questions
New
32

Translators overview: why translation is needed

Click to generate questions
New
33

Compilers vs interpreters: key differences and impacts

Click to generate questions
New
1

Why computers are connected in networks (shared resources + communication)

Click to generate questions
New
2

LANs vs WANs: features and typical examples

Click to generate questions
New
3

How the internet is structured (routers + IP addressing)

Click to generate questions
New
4

IP addresses: what they are used for (basic purpose)

Click to generate questions
New
5

Routers: what they do in directing data

Click to generate questions
New
6

Wired vs wireless: speed, range, latency and bandwidth

Click to generate questions
New
7

Network speed units (bits per second: kilobit/megabit/gigabit)

Click to generate questions
New
8

Calculating transfer time from file size and transmission rate

Click to generate questions
New
9

Calculating required transmission rate for a given time limit

Click to generate questions
New
10

Why protocols are needed (standards for communication)

Click to generate questions
New
11

Ethernet and Wi-Fi: what they are used for

Click to generate questions
New
12

TCP/IP: why it matters as a protocol suite

Click to generate questions
New
13

HTTP vs HTTPS: what changes and why it matters

Click to generate questions
New
14

FTP: what it’s used for

Click to generate questions
New
15

Email protocols: SMTP, POP3 and IMAP (what each does)

Click to generate questions
New
16

TCP/IP 4-layer model: what a “layer” means

Click to generate questions
New
17

Application layer: what it’s responsible for

Click to generate questions
New
18

Transport layer: what it’s responsible for

Click to generate questions
New
19

Internet layer: what it’s responsible for

Click to generate questions
New
20

Link layer: what it’s responsible for

Click to generate questions
New
21

Bus topology: structure, strengths and weaknesses

Click to generate questions
New
22

Star topology: structure, strengths and weaknesses

Click to generate questions
New
23

Mesh topology: structure, strengths and weaknesses

Click to generate questions
New
24

Why network security matters

Click to generate questions
New
25

Network vulnerabilities: what they are and why they happen

Click to generate questions
New
26

Penetration testing: what it is used for

Click to generate questions
New
27

Ethical hacking: what it is and why it’s done

Click to generate questions
New
28

Access control as a protection method

Click to generate questions
New
29

Physical security as a protection method

Click to generate questions
New
30

Firewalls as a protection method

Click to generate questions
New
1

Environmental impacts of digital devices: energy consumption

Click to generate questions
New
2

Environmental impacts of digital devices: manufacture of hardware

Click to generate questions
New
3

Environmental impacts of digital devices: replacement cycles

Click to generate questions
New
4

Environmental impacts of digital devices: disposal and e-waste

Click to generate questions
New
5

Personal data: what it is and why it’s valuable

Click to generate questions
New
6

Privacy risks from collecting personal data

Click to generate questions
New
7

Data ownership and consent (what “informed consent” looks like)

Click to generate questions
New
8

Misuse of personal data (common examples)

Click to generate questions
New
9

Data protection principles (what laws try to enforce)

Click to generate questions
New
10

AI/ML/robotics: what makes them ethically challenging

Click to generate questions
New
11

Accountability in AI decisions (who is responsible?)

Click to generate questions
New
12

Safety risks in automated systems

Click to generate questions
New
13

Algorithmic bias: how it happens and why it matters

Click to generate questions
New
14

Legal liability for AI/robotics failures (basic idea)

Click to generate questions
New
15

Copyright: protecting creative software and digital content

Click to generate questions
New
16

Patents: protecting inventions and technical ideas

Click to generate questions
New
17

Trademarks: protecting brand identity

Click to generate questions
New
18

Licensing: rules for using software legally

Click to generate questions
New
19

Malware overview: what it is and what it does

Click to generate questions
New
20

Viruses, worms and Trojans: how they differ

Click to generate questions
New
21

Ransomware: how it attacks and what it demands

Click to generate questions
New
22

Key loggers: what they capture and why

Click to generate questions
New
23

Exploiting unpatched software: why updates matter

Click to generate questions
New
24

Out-of-date anti-malware: why protection can fail

Click to generate questions
New
25

Social engineering: manipulating users to gain access

Click to generate questions
New
26

Protecting systems with anti-malware

Click to generate questions
New
27

Protecting data with encryption (basic purpose)

Click to generate questions
New
28

Acceptable use policies: what they do and why

Click to generate questions
New
29

Backup and recovery procedures: reducing damage after attacks

Click to generate questions
New
1

Turning a problem statement into a plan using decomposition

Click to generate questions
New
2

Using abstraction to decide what details to include in code

Click to generate questions
New
3

Reading code to understand purpose, inputs and outputs

Click to generate questions
New
4

Tracing program execution to predict outputs

Click to generate questions
New
5

Refining code for clarity and maintainability

Click to generate questions
New
6

Converting flowcharts into working programs

Click to generate questions
New
7

Converting pseudocode into working programs

Click to generate questions
New
8

Constants, variables, initialisation and assignment

Click to generate questions
New
9

Input, processing and output in a program

Click to generate questions
New
10

Sequence in real programs

Click to generate questions
New
11

Selection in real programs (if/else style decisions)

Click to generate questions
New
12

Repetition: count-controlled loops in programs

Click to generate questions
New
13

Repetition: condition-controlled loops in programs

Click to generate questions
New
14

Iteration through each item in a data structure

Click to generate questions
New
15

Single entry/exit code blocks (structured programming idea)

Click to generate questions
New
16

Primitive data types in code (integer, real, Boolean, char)

Click to generate questions
New
17

Strings: storing and using text

Click to generate questions
New
18

Arrays: storing multiple values in one structure

Click to generate questions
New
19

Two-dimensional arrays: storing grid/table data

Click to generate questions
New
20

Records: grouping fields for one “thing”

Click to generate questions
New
21

Choosing variables vs constants appropriately

Click to generate questions
New
22

String manipulation: length and positions

Click to generate questions
New
23

String manipulation: substrings

Click to generate questions
New
24

String manipulation: case conversion

Click to generate questions
New
25

Validating user input: length checks

Click to generate questions
New
26

Validating user input: presence checks

Click to generate questions
New
27

Validating user input: range checks

Click to generate questions
New
28

Validating user input: pattern checks

Click to generate questions
New
29

Authentication in code: ID/password and lookup approach

Click to generate questions
New
30

Writing programs that respond appropriately to user input

Click to generate questions
New
31

Reading from CSV text files

Click to generate questions
New
32

Writing to CSV text files

Click to generate questions
New
33

Arithmetic operators in programs (modulus and integer division)

Click to generate questions
New
34

Exponentiation in programs (when and why)

Click to generate questions
New
35

Relational operators in programs (comparisons)

Click to generate questions
New
36

Logical operators in programs (AND, OR, NOT)

Click to generate questions
New
37

Using pre-existing (built-in/library) subprograms appropriately

Click to generate questions
New
38

Writing procedures: structure and purpose

Click to generate questions
New
39

Writing functions: structure and purpose

Click to generate questions
New
40

Parameters and arguments: passing data into subprograms

Click to generate questions
New
41

Return values: getting data back from a function

Click to generate questions
New
42

Global vs local variables: scope and good practice

Click to generate questions
New
43

Debugging: spotting syntax errors quickly

Click to generate questions
New
44

Debugging: fixing runtime errors safely

Click to generate questions
New
45

Debugging: finding logic errors using test data

Click to generate questions
New