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 · OCR · Edexcel · Eduqas), 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.
- Breakpoint
- a marker set on a line of code that pauses the program when that line is reached, so the programmer can inspect the values of variables at that point.
- 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.
- Editor
- where source code is typed and edited; IDE editors add features such as automatic line numbering, colour coding of keywords (syntax highlighting) and automatic indentation, which make code easier to read.
- 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.
- Integrated Development Environment (IDE)
- software that combines the tools needed to write, translate, run and debug programs in one application.
- 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.
Showing 30 of 274. 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.
- 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.
- 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.
- Pharming
- an attack that redirects users from a legitimate website to a fraudulent copy in order to steal credentials or personal data.
- Attacker's goal
- to capture credentials (and sometimes payment details) that users enter into the fake site, believing it to be genuine.
- Phishing
- the use of fake emails or messages that pretend to be from a trusted organisation, asking for personal data such as passwords.
- Phishing
- the social-engineering form that uses fake emails or messages to harvest information.
Showing 30 of 184. Practise the full Cyber Security 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.
- DNS
- made up of many Domain Name Servers spread across the world, not a single server.
- DNS
- used because domain names are easier for people to remember than numeric IP addresses, while computers need the IP address to send packets.
- 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.
- MAC address
- a unique identifier assigned to a network adapter, used at the Link layer.
- 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.
- Application layer
- the interface between user applications (such as a web browser or email client) and network services.
- Peer-to-peer network
- cheap and easy to set up because no dedicated server or network manager is needed.
- 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).
- Network switch
- a typical device used to connect multiple computers together inside a network.
- TCP
- the protocol that guarantees ordered delivery of packets.
- Wired Ethernet connections
- usually faster and more reliable than wireless under equivalent conditions.
Showing 30 of 183. Practise the full Fundamentals of Computer Networks 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.
- Disk defragmenter
- a utility program; word processors, web browsers and games are application software.
- Assembly
- easier to read and write than raw machine code: mnemonics are easier for humans than long binary numbers.
- Assembly language
- often used to develop software for embedded systems and for controlling specific hardware components.
- Embedded system
- a computer system with a dedicated function (one specific task) built into a larger device.
- Embedded systems
- typically physically small and cheaper to make than general-purpose computers.
- Embedded system
- part of a larger device or machine that it controls, rather than being a standalone computer.
- 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).
Showing 30 of 180. Practise the full Computer Systems 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.
- 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).
- 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.
- 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.
- RLE
- a lossless compression method: the original can be perfectly reconstructed by expanding each (count, value) pair.
- RLE
- not a lossy compression method: it discards no data.
- Sample rate
- the number of samples taken per second of sound, measured in hertz (Hz).
- Sampling
- measuring the amplitude of an analogue sound signal at fixed intervals.
Showing 30 of 168. Practise the full Fundamentals of Data Representation 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.
- Algorithm's efficiency
- judged by the time (number of steps) and memory it needs and how these grow with input size; who wrote it is irrelevant.
- Binary search
- faster than linear search on large sorted data sets: the log₂ n vs n gap widens rapidly.
- 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.
- 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.
- When two algorithms have identical worst-case behaviour, average-case behaviour on realistic input can decide which is better.
- For 1,024 sorted items the worst case is 11 comparisons (floor(log₂ 1024) + 1).
Showing 30 of 124. Practise the full Fundamentals of Algorithms set →
Ethical, Legal and Environmental Impacts
Practise Ethical, Legal and Environmental Impacts →Practise →- Accountability
- the issue of who is answerable (the developer, the organisation using it, or the user) when an AI system makes a decision that causes harm.
- Algorithmic bias
- when an AI or computer system produces results that are unfair to certain groups of people.
- 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).
- 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.
- Benefit
- that implants can monitor a condition continuously and treat it automatically (e.g. ICDs delivering a shock during arrhythmia).
- Legal liability
- the question of who is legally responsible, for example who must pay compensation, when an AI system or robot causes harm or damage.
- Software licence
- a legal agreement that sets out how the software may be used, copied and distributed, protecting the rights of its creator.
- Machine learning
- a type of artificial intelligence in which a computer learns by finding patterns in training data, rather than being explicitly programmed with a rule for every situation.
- Pacemaker
- the implant that regulates a slow heartbeat.
- Safety
- the issue of making sure AI systems and robots are tested so that they do not cause physical or other harm to people.
- 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.
- Long-standing public concern
- the possible long-term health effects of radio-frequency exposure from Wi-Fi (current scientific consensus from WHO is that low-level RF exposure has no demonstrated harm).
- Wireless networks
- not only useful in large offices: they're now essential in homes, cafés, schools and public spaces.
- Always-on connectivity changes the work–life balance (out-of-hours emails, "right to disconnect" debates).
- Software designed for phones is called an "app".
Showing 30 of 121. Practise the full Ethical, Legal and Environmental Impacts 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.
- 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.
- 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.
- Specifying a data type for each field helps keep stored data valid: type checks reject values of the wrong type, such as text in a number field.
- A typical real-world example is a school storing all pupil records (and class enrolment, attendance, grades) in a database.
Showing 30 of 116. Practise the full Relational Databases and SQL set →
Three minutes a day. Knowledge that sticks.
Short daily practice with spaced repetition, so what you revise today is still there in the exam. Free to use, no card needed.