GCSE Computer Science Key Terms & Vocabulary
Every key term and definition you need for GCSE Computer Science, organised by topic. 240 definitions across 8 topics (AQA · Edexcel · Eduqas · OCR), free to read and practise with spaced-repetition flashcards.
Programming
Practise Programming →Practise →- Anticipating misuse
- a programmer thinks about how a user could accidentally or deliberately cause a program to fail, and writes code to prevent harm.
- One-dimensional array
- a single, ordered list of values held under a single variable name.
- Two-dimensional array
- a grid of values organised by rows and columns.
- 2D array
- useful for representing data in a table or grid form — spreadsheets, game boards, etc.
- Array items
- accessed using their index, e.g.
a[3]is the fourth item in a zero-indexed array. - Authentication
- the process of checking who a user is.
- Boundary values
- tested because edge cases are where off-by-one and equality-vs-strict-inequality bugs often hide.
- Boundary test data
- data at the edges of the valid range — typically the minimum, maximum, and the values just outside.
- Characters
- converted to numeric codes so the computer can store them as binary patterns in memory.
- Chessboard
- best modelled by an 8 × 8 2D array (one row and one column for each square).
- Comment
- a note added to code to explain its purpose; it is ignored by the computer when the program runs.
- Comments
- not executed — they are there only for the human reader, not the computer.
- Constant
- a named value that is fixed at declaration and cannot change while the program runs.
- Defensive design
- writing programs that anticipate unexpected or incorrect use and handle it gracefully instead of crashing.
- Erroneous data
- data the program should reject as invalid — the test is whether the rejection actually happens.
- Erroneous test data
- data the program should reject — wrong type, out of range, or invalid format.
- Error handling
- code that catches runtime errors (e.g. dividing by zero, opening a missing file) and responds sensibly instead of crashing.
- Indentation
- the consistent use of horizontal spacing to show that statements belong inside a block (e.g. a loop or IF statement).
- Indentation
- essential to making nested control structures readable, especially in languages without explicit end markers.
- Input sanitisation
- the process of removing or replacing dangerous or unexpected characters from user input before the program uses it.
- Integer
- a whole number with no decimal part (e.g. 42, -3, 0).
- Iteration
- repeating a block of code, with each repetition called a pass through the loop.
- Local variable
- a variable that exists only inside the subroutine that declared it.
- Logic error
- the code runs but produces the wrong result — the syntax is correct, the reasoning is not.
- Logic errors
- usually the hardest to find because the program still runs — only the output is wrong.
- Maintainability
- how easily a program can be read, understood, changed, and debugged, especially by someone other than the original programmer.
- Modular programs
- typically easier to debug because each module's behaviour can be examined in isolation.
- Modular code
- easier to test than one large block, because each module has clear boundaries.
- Modularity
- splitting a program into independent, well-defined parts (modules or subroutines).
- Nested loop
- a loop placed inside another loop; the inner loop completes all its iterations for every one iteration of the outer loop.
Showing 30 of 257. Practise the full Programming set →
Cyber Security
Practise Cyber Security →Practise →- Access control
- limiting which users can access which resources.
- Anti-virus software alone
- not enough — social engineering bypasses technical controls by attacking the human.
- Fingerprint scan
- a biometric authentication factor (PINs, USB keys, SMS codes are knowledge/possession factors, not biometrics).
- Black-box testing
- the tester has no inside knowledge of the system — they probe it as an outsider would.
- Blagging (also called pretexting)
- inventing a believable story to convince a victim to grant access or hand over information.
- Blagging
- a story-based manipulation — it does not involve writing malicious code or hacking a server.
- CAPTCHA's main job
- to tell humans apart from automated bots on web forms.
- CAPTCHAs
- not a replacement for passwords on a login form — they supplement rather than replace authentication.
- Email confirmation alone
- NOT a complete two-factor authentication system — it's a single account-creation check, not an ongoing second login factor.
- Cyber security
- the protection of computers, devices, networks and data from unauthorised access, damage and disruption.
- Cyber security
- everyone's responsibility, not just the IT department's — most successful attacks involve human error (e.g. clicking a phishing link).
- Primary purpose
- to prevent unauthorised access to data and systems, and to keep services running reliably.
- Default passwords
- risky because attackers already know them — they're published in manuals and on enumeration sites.
- Default credentials
- widely published in vendor manuals and online lists; that's the fundamental reason to change them.
- Forcing frequent password changes
- now considered bad practice — users respond by creating weaker, predictable variants. NIST and NCSC both discourage scheduled rotation.
- Malware
- software intentionally designed to harm a computer, steal data, or disrupt services.
- Malware
- malicious software designed to harm systems — it is not legitimate productivity software.
- Malware
- created with malicious intent — this is the defining property, not how it's delivered.
- Malware
- short for "malicious software" — software written with harmful intent.
- Malware
- short for malicious software.
- Cyber security
- not concerned with CPU clock speed, screen brightness, file compression, or language translation — those are unrelated computing concerns.
- Outdated software
- NOT more secure than updated software — it's almost always less secure because known vulnerabilities remain unfixed.
- Outdated software
- a risk because its known vulnerabilities remain unpatched and attackers can exploit them at will.
- Good password rule
- to use a long, unique passphrase for each site (NCSC's "three random words" guidance is a UK example).
- Common policy rule
- a minimum length of 8–12 characters (NIST now recommends at least 15).
- Password policy
- a set of rules governing how passwords are created and used on a system.
- Patch
- a security fix for known bugs in software.
- Penetration testing
- an authorised simulated cyberattack designed to find weaknesses in a system before real attackers do.
- Convincing pharmed page
- designed to look identical to the legitimate site so users don't notice the substitution.
- One defence
- to check the exact site address and HTTPS padlock before entering credentials — a pharmed page often has an incorrect URL or missing/invalid TLS certificate.
Showing 30 of 170. Practise the full Cyber Security set →
Fundamentals of Data Representation
Practise Fundamentals of Data Representation →Practise →- ASCII
- limited in modern use because it cannot encode many non-English characters (no Chinese, Arabic, Cyrillic, accented Latin).
- Binary
- the base computers use natively.
- Bit
- the smallest unit of digital information — a single binary digit holding 0 or 1.
- There
- 8 bits in a byte.
- There
- 8 bits in 1 byte.
- Byte
- made up of eight bits.
- Colour depth
- the number of bits used to represent the colour of a single pixel.
- Colour depth
- bits per pixel, not to the height of the image in pixels (that's part of resolution).
- Compression
- useful because compressed files take less storage space and less bandwidth (transmit faster).
- Compression
- not always lossy by default — many widely-used compressed formats (ZIP, PNG, FLAC) are lossless.
- Decimal
- base 10 — it uses ten distinct digits (0-9).
- Gigabyte
- larger than a megabyte (10⁹ bytes vs 10⁶ bytes).
- Hexadecimal
- a more compact way of writing binary values.
- Hex
- used because each digit equals 4 bits — making conversion to binary trivial.
- Hex
- used for memory addresses because it is compact and converts cleanly to binary, the form the hardware uses.
- Hex
- base 16, not base 8 (base 8 is octal — a different system using digits 0-7).
- Hex
- not used because it is faster for the CPU — the CPU still works in binary internally. Hex exists for human convenience.
- Hex
- shorter than binary because four binary digits collapse into a single hex digit, making it easier for programmers to read and write.
- Hexadecimal symbols
- 0-9 followed by A, B, C, D, E, F (representing decimal values 10-15).
- Character's Huffman code
- read off by following the path from the root to that character's leaf, recording 0 for each left branch and 1 for each right branch.
- Huffman coding
- a lossless compression method — no data is lost.
- Huffman coding
- not a lossy method.
- Huffman codes
- prefix-free — no code is the prefix of another — so a decoder can unambiguously work out where one code ends and the next begins.
- Huffman codes
- typically shorter for more frequent characters.
- Huffman coding
- most effective when character frequencies are uneven — the more skewed the distribution, the bigger the savings.
- If the sample rate
- too low, the digital recording loses detail and high-frequency content from the original sound.
- Nibble
- 4 bits — half a byte (the size of one hexadecimal digit).
- Overflow
- when the result of an addition needs more bits than the register can hold — the high bit is lost or flagged.
- Overflow flag
- a CPU status bit that indicates the most recent arithmetic operation exceeded the register's capacity.
- Pixel
- the smallest individually addressable dot in a raster image.
Showing 30 of 158. Practise the full Fundamentals of Data Representation set →
Computer Systems
Practise Computer Systems →Practise →- Accumulator (ACC)
- the register that holds the data the ALU is currently working on and the result of the most recent ALU operation.
- Assembly language
- a low-level language — its instructions are mnemonics for the instruction set of one specific CPU architecture.
- Assembly language
- mostly made of short mnemonics (like
MOV,ADD,SUB,LDR) that represent individual CPU instructions. - Web browser
- application software — it performs a task for the user.
- CPU cache
- very fast memory placed close to (or on) the CPU that holds recently used instructions and data.
- CD-ROM
- optical (read by a laser), not magnetic storage.
- Higher clock speed
- more clock cycles per second, so more instructions can be executed per second (all else equal).
- Compiled programs
- usually distributed as binary executables; interpreted programs are typically distributed as source code that the user's interpreter then runs.
- More CPU cores
- more separate processing units, so multiple tasks (or threads) can run in parallel.
- CPU
- the component that fetches instructions from memory in a Von Neumann machine.
- CPU
- a hardware component (a physical silicon chip), not software.
- Cycle
- commonly written as fetch – decode – execute in that order.
- Disk defragmenter
- utility software that rearranges fragmented files on a hard drive so each file's data is stored in contiguous sectors.
- Assembly
- easier to read and write than raw machine code — mnemonics are easier for humans than long binary numbers.
- Firmware
- software stored permanently inside a hardware component (typically on ROM or flash memory) that provides low-level control of that device — for example the BIOS or the controller in a printer.
- Harvard architecture
- the main alternative — it uses physically separate memories and buses for code and data, removing the bottleneck.
- HDDs
- the most fragile of the three when running because their spinning platters and moving heads are easily damaged by shock.
- High-level languages
- the level that is closer to human language than to the CPU.
- High-level languages
- preferred for learning programming because they are easier to read, write, and debug.
- Hardware
- the physical/electronic parts of a computer; software is the set of instructions (programs and data) that tell the hardware what to do.
- Machine code
- binary instructions that the CPU can execute directly without any further translation.
- Machine code
- a low-level language, not high-level.
- Multitasking
- the OS's ability to run multiple programs apparently at once, by switching the CPU between them rapidly.
- NAND gate
- an AND gate followed by a NOT — the output is the inversion of AND.
- Operating system
- software, not hardware, even though it's stored on a hardware device (a disk).
- Operating system
- classed as system software, not application software.
- Python
- a high-level language — it uses readable English-like keywords (
if,while,for,def). - Python
- most commonly used as an interpreted, high-level language at school level.
- At school level Python
- the canonical example of an interpreted language.
- RAM
- volatile memory — its contents disappear when the computer is switched off.
Showing 30 of 153. Practise the full Computer Systems set →
Fundamentals of Computer Networks
Practise Fundamentals of Computer Networks →Practise →- Authentication
- needed on a network to restrict access to authorised users only.
- Biometric authentication
- harder to fake than a password because the verifying feature is part of the user's body.
- If encrypted data
- intercepted, the attacker only sees scrambled ciphertext, not the original plaintext.
- Common protocol
- needed between two computers so they both agree on how data is sent and received.
- Key disadvantage
- the greater risk of malware spreading widely from one infected device to others on the network.
- Encryption
- used on a network so that intercepted data cannot be read by attackers.
- Firewall
- a filter for network traffic that allows or blocks packets based on configured rules.
- Firewall
- not a complete defence — other security layers (antivirus, patching, user training) are still needed.
- Firewall
- usually placed between a network and the internet — at the boundary between trusted and untrusted networks.
- HTTP (Hypertext Transfer Protocol)
- a typical network protocol — used for transferring web pages.
- HTTP
- used for transferring web pages and other resources between a web server and a web browser.
- HTTPS
- now the recommended default for all websites, not just login pages — modern browsers warn users when a site is plain HTTP.
- IMAP
- the protocol that leaves email on the server until the user deletes it (contrast with POP3, which downloads and removes).
- IMAP
- for retrieving email — it is not used for transferring web pages between servers (that's HTTP).
- Internet
- the world's largest WAN — spanning the entire globe.
- IP address
- a unique number identifying a device on a network.
- IP's main job
- addressing each packet (source and destination IP addresses) and routing it across the network.
- Even strongly encrypted data
- at risk if the encryption key itself is leaked.
- Model
- split into layers so each layer handles one specific job — protocols can change at one layer without affecting the others.
- MAC address
- a unique identifier assigned to a network adapter, used at the Link layer.
- MAC address filtering
- not impossible to bypass — spoofing is a well-known attack.
- MAC address filtering
- usually configured on the network router or wireless access point.
- Computer network
- best defined as two or more devices that share data via a communication link.
- Computer network
- two or more connected computers that can share data.
- PAN (Personal Area Network)
- the smallest network type, typically spanning a few metres around a single user.
- Network protocol
- a set of agreed rules for communication between devices.
- Network protocol
- a set of rules for communication between devices.
- Server
- a single device that can manage network access — handling authentication, file storage, and shared services.
- SMTP
- mainly used for sending email between mail servers.
- SMTP
- used to send email between mail servers (and from a mail client to its outgoing server).
Showing 30 of 140. Practise the full Fundamentals of Computer Networks set →
Fundamentals of Algorithms
Practise Fundamentals of Algorithms →Practise →- Abstraction
- removing or hiding detail that isn't needed to solve the problem at hand, focusing only on the essential information.
- Abstraction
- ignoring details that are not relevant to solving the problem.
- Algorithm
- a precise, finite sequence of steps for solving a problem.
- Algorithm
- a sequence (an ordered set) of steps to complete a task — "a set of instructions" is too vague because order matters. An algorithm is not the same as a program; a program is one implementation of an algorithm.
- AQA pseudo-code
- language-independent — the exam does not enforce a single strict syntax, only the broad conventions in the AQA reference language document.
- Binary search
- faster than linear search on large sorted data sets — the log₂ n vs n gap widens rapidly.
- If the target
- less than the middle item, binary search continues with the lower half of the list (and discards the upper half).
- Binary search
- not always faster — on very small lists, or when the target is the first element, linear can win.
- Bubble sort
- in-place: it uses only a small fixed amount of extra memory (O(1) auxiliary).
- Bubble sort
- the more space-efficient algorithm on large data — it works in place using O(1) auxiliary memory.
- Bubble sort's worst case
- about n(n-1)/2 comparisons — quadratic time.
- Decomposition
- useful because smaller sub-problems are easier to understand, design, code, test, and reuse than the whole problem at once.
- Decomposition
- breaking a complex problem down into smaller, more manageable sub-problems.
- Decomposition
- splitting a problem into sub-problems — it does not combine many small problems into one larger problem.
- If the target
- the very first item in the list, linear search needs just one comparison.
- Linear search
- the search that works on unsorted data; binary search requires sorted data.
- Linear search
- sometimes preferred even on sorted data because it is simpler to write, read, and trace.
- Merge sort
- called divide and conquer because it splits the original problem into smaller sub-problems (sub-lists), solves them, and combines the results.
- Merge sort
- the one that uses the divide-and-conquer strategy.
- Merge sort
- faster than bubble sort on large data sets (O(n log n) vs O(n²)).
- Merge sort
- generally faster than bubble sort on large data sets (O(n log n) vs O(n²)).
- Merge sort
- preferred for sorting very large data sets where speed matters most.
- Pseudo-code
- used for describing algorithms in plain, language-independent steps before they're translated into a specific programming language.
- Trace table
- more useful when it records every change of each variable, not just the final values.
- Trace tables
- most useful for finding logic errors (the program runs but produces the wrong output).
- Trace table
- a row-by-row record of the values held by each variable at each step of an algorithm.
- London Tube map
- the classic example of abstraction — lines are drawn straight to show connectivity, not the geographically exact route.
- Algorithm efficiency
- typically compared using two resources: time taken (running speed) and memory used.
- Flowchart arrows show the order of execution between the shapes.
- The author of the algorithm is not a factor that affects its efficiency comparison — only its steps/memory/scaling do.
Showing 30 of 116. Practise the full Fundamentals of Algorithms set →
Relational Databases and SQL
Practise Relational Databases and SQL →Practise →- Data inconsistency
- when the same fact is recorded with different values in different places — usually caused by missing updates to redundant copies.
- Data redundancy
- when the same data is stored in more than one place.
- Database
- an organised collection of data.
- Typical real-world example
- a school storing all pupil records (and class enrolment, attendance, grades) in a database.
- Database
- NOT just a folder of unrelated text files — the data is structured and the relationships are explicit.
- Database
- a structured store of related data with built-in query support — not a random text file or photo folder.
- Database
- designed for storing and retrieving large amounts of structured data.
- Field
- a single column of a database table — one attribute (name, age, year).
- Field
- NOT the entire row of data — it's a single column.
- Foreign key
- a field in one table that holds the primary key value of a record in another table — used to link the two.
- Foreign key
- used to link records across two tables (Students.class_id → Classes.id).
- INSERT INTO
- NOT used to delete records — that's the DELETE FROM statement.
- Operation
- called a "join" because two tables are joined into one combined result set.
- Normalisation
- the formal process that reduces redundancy in relational design by splitting into multiple tables according to normal-form rules.
- Primary key
- a unique identifier for each record in a table.
- Record
- a single row in a database table.
- Record
- one row representing a single entity in a database.
- Record
- a single row of data in a database table — typically describing one entity (one student, one book).
- Redundancy
- a problem because it wastes storage and risks inconsistency: an update missed in one place leaves contradictory data.
- Relational database
- a database that stores data in linked tables.
- Relational database
- the type of database that stores data in linked tables.
- Relational design
- chosen over a flat-file design because it reduces redundancy and the inconsistency that redundancy causes.
- Table
- a structured grid of rows and columns.
- In AQA-style GCSE SQL, two tables are joined using a WHERE clause that matches the key fields:
... FROM A, B WHERE A.id = B.a_id. - At GCSE level, AQA's SQL questions are limited to two-table queries — they do not require students to write three- or four-table joins.
ASCstands for ascending order — smallest to largest, or A→Z for text.SELECT title, name FROM Books, Authors WHERE Books.author_id = Authors.idreturns each book's title plus its author's name.- A two-table query without a WHERE link condition produces every combination of rows (a Cartesian product).
- A composite primary key uses two or more columns together for uniqueness — useful when no single column is unique on its own.
- The best way to avoid storing a customer's address twice is to store the address once in a Customers table and link to it from Orders via a foreign key.
Showing 30 of 116. Practise the full Relational Databases and SQL set →
Ethical, Legal and Environmental Impacts
Practise Ethical, Legal and Environmental Impacts →Practise →- One ethical/legal issue
- liability when a self-driving car crashes — whose fault is it?
- Cyber-security concern
- that a hacked autonomous vehicle could be driven remotely — high consequence, low frequency.
- Fully self-driving car
- described as autonomous (SAE level 5 is the fully autonomous level).
- Potential benefit
- reducing road accidents caused by human error (impaired driving, distraction, fatigue).
- Major ethical issue
- how an autonomous car should decide in a no-win crash scenario — the so-called "trolley problem" applied to AVs.
- Autonomous vehicle
- a car (or other vehicle) capable of operating with reduced or no human input.
- Black-hat hacker
- an attacker working with malicious intent (theft, sabotage, extortion).
- Disadvantage
- that an internet connection is required to access stored files.
- Privacy concern
- that a third party can potentially see or lose your data — and may be subject to different jurisdictions / lawful-access regimes.
- Cloud storage
- data stored on remote servers operated by a third party, accessed over the internet.
- UK 1990 anti-hacking law
- the Computer Misuse Act.
- Computer Misuse Act 1990
- the UK law that makes unauthorised access to a computer illegal.
- E-waste
- discarded electronic devices and components.
- E-waste
- discarded electronic devices and components — distinct from paper waste, plastic bags or garden waste.
- Encryption
- important on public Wi-Fi because it stops eavesdroppers reading data in transit (HTTPS, VPN).
- Ethical concern
- long- term consent and the practical ability to remove the implant later — surgery to remove can carry significant risk.
- Privacy issue
- that constant body-monitoring data may be sent to a remote server (the vendor's, or a clinician's) — raising who-sees-what questions.
- Computer-based implant
- a computing device placed inside the body.
- Documented security concern
- that wirelessly-accessible implants could be hacked or interfered with — the US FDA has issued real-world pacemaker firmware advisories.
- Benefit
- that implants can monitor a condition continuously and treat it automatically (e.g. ICDs delivering a shock during arrhythmia).
- Negative impact
- increased screen time and the risk of compulsive use ("smartphone addiction").
- Pacemaker
- the implant that regulates a slow heartbeat.
- There
- a trade-off: more surveillance reduces personal privacy; more privacy can reduce the ability of authorities to investigate crime.
- There
- genuine debate about how to balance privacy rights with state security.
- There
- genuine tension between user privacy and state surveillance.
- Common wearable
- a smartwatch tracking heart rate and activity.
- Governments argue surveillance
- needed to detect terrorism, organised crime and child abuse.
- Wearable technology
- an electronic device worn on the body.
- Privacy concern
- the continuous tracking of health, activity and location data — Strava's heat-map incident revealed military base locations.
- Positive impact
- that wearables can encourage people to exercise more by setting step goals and providing feedback.
Showing 30 of 105. Practise the full Ethical, Legal and Environmental Impacts set →
Try it for four weeks. Free.
One school. Unlimited classes. No card limit. No teacher limit. If your students aren't practising daily by the end of the trial, you owe us nothing.