Cambridge IAL Computer Science study materials
Cambridge IAL Computer Science study resources

Cambridge IAL Computer Science key terms

Cambridge IAL Computer Science · Get comfortable with the vocabulary.

Algorithm

A step-by-step procedure for solving a problem or performing a computation. It must be unambiguous, have a finite number of steps, and produce a result for valid inputs.

Related: Pseudocode, Flowchart, Abstraction
Abstraction

The process of removing unnecessary details to focus on the essential features of a problem. It simplifies complex systems, making them easier to understand and solve.

Related: Decomposition, Algorithm, Encapsulation
Decomposition

Breaking a complex problem into smaller, more manageable sub-problems that can be solved independently. This makes the overall problem easier to tackle and understand.

Related: Abstraction, Algorithm
Pseudocode

A structured, English-like way of describing an algorithm without strict syntax rules. It is used to plan and communicate logic before coding in a specific language.

Related: Algorithm, Flowchart
Flowchart

A diagram that uses standard symbols (e.g., ovals for start/end, rectangles for processes, diamonds for decisions) to represent the steps of an algorithm visually.

Related: Pseudocode, Algorithm
Linear Search

A search algorithm that checks each element of a list in sequence until the target is found or the list ends. It works on unsorted data but is inefficient for large lists.

Related: Binary Search, Algorithm
Binary Search

A search algorithm that repeatedly divides a sorted list in half, comparing the target with the middle element, to locate the target efficiently. It requires the data to be sorted.

Related: Linear Search, Algorithm
Bubble Sort

A sorting algorithm that repeatedly steps through the list, compares adjacent elements, and swaps them if they are in the wrong order. Larger elements 'bubble' to the end.

Related: Insertion Sort, Algorithm
Insertion Sort

A sorting algorithm that builds the sorted list one element at a time by inserting each new element into its correct position among the already sorted elements.

Related: Bubble Sort, Algorithm
Object-Oriented Programming (OOP)

A programming paradigm based on objects that contain data (attributes) and methods (procedures). It promotes modularity, reuse, and encapsulation.

Related: Class, Object, Inheritance, Encapsulation
Class

A blueprint or template that defines the attributes and methods common to all objects of a certain kind. Objects are created (instantiated) from a class.

Related: Object, Inheritance, Encapsulation
Object

An instance of a class. It has its own state (values of attributes) and can perform actions defined by its class's methods.

Related: Class, Encapsulation
Inheritance

A mechanism in OOP where a new class (subclass) acquires the attributes and methods of an existing class (superclass). It supports code reuse and hierarchical classification.

Related: Class, Object, Polymorphism
Encapsulation

The bundling of data and methods within a class, hiding internal state from outside access. It protects data integrity and reduces coupling between components.

Related: Class, Object, Inheritance
Polymorphism

The ability of different classes to respond to the same method call in their own way. It allows objects of different types to be treated uniformly through a common interface.

Related: Inheritance, Object
Recursion

A technique where a function calls itself to solve a smaller instance of the same problem. It requires a base case to terminate, preventing infinite loops.

Related: Algorithm, Stack
Protocol

A set of rules that governs how data is transmitted and received over a network. It ensures that devices can communicate reliably despite differences in hardware or software.

Related: TCP/IP, Packet, IP Address
TCP/IP

A suite of protocols used for communication on the Internet. TCP ensures reliable, ordered delivery of data, while IP handles addressing and routing of packets.

Related: Protocol, IP Address, Packet
IP Address

A unique numerical label assigned to each device on a network that uses the Internet Protocol. It identifies the device's location and enables routing of data packets.

Related: TCP/IP, Packet, Protocol
Packet

A small unit of data transmitted over a network. It contains a header with source and destination addresses and a payload with the actual data.

Related: TCP/IP, IP Address, Protocol
Client-Server Model

A network architecture where client devices request services or resources from a central server, which processes requests and returns responses.

Related: Protocol, IP Address
DNS (Domain Name System)

A hierarchical system that translates human-readable domain names (e.g., www.example.com) into IP addresses, enabling browsers to locate web servers.

Related: IP Address, Protocol
HTTP (Hypertext Transfer Protocol)

An application-layer protocol used for transmitting web pages and other resources over the Internet. It defines how messages are formatted and transmitted between web clients and servers.

Related: Protocol, DNS (Domain Name System)
CPU (Central Processing Unit)

The primary component of a computer that executes instructions. It fetches, decodes, and executes program instructions, performing arithmetic and logical operations.

Related: ALU, Control Unit, Register
ALU (Arithmetic Logic Unit)

A digital circuit within the CPU that performs arithmetic (e.g., addition, subtraction) and logical (e.g., AND, OR, NOT) operations on data.

Related: CPU (Central Processing Unit), Register
Control Unit

The part of the CPU that directs the operation of the processor. It decodes instructions and coordinates the flow of data between components.

Related: CPU (Central Processing Unit), Register, ALU (Arithmetic Logic Unit)
Register

A small, fast storage location within the CPU used to hold data temporarily during processing. Examples include the program counter and accumulator.

Related: CPU (Central Processing Unit), ALU (Arithmetic Logic Unit), Control Unit
Cache Memory

A small, high-speed memory located close to the CPU that stores frequently accessed data and instructions to reduce average access time.

Related: RAM (Random Access Memory), Register
RAM (Random Access Memory)

Volatile primary memory that stores data and instructions currently in use. It allows random access and is erased when power is lost.

Related: Cache Memory, ROM (Read-Only Memory)
ROM (Read-Only Memory)

Non-volatile memory that stores permanent instructions, such as the boot firmware. Its contents cannot be easily changed during normal operation.

Related: RAM (Random Access Memory)
Binary

A base-2 number system that uses only two digits, 0 and 1. It is the fundamental representation of data in digital computers.

Related: Hexadecimal, Bit, Byte
Hexadecimal

A base-16 number system using digits 0-9 and letters A-F. It provides a compact way to represent binary values, often used in programming and memory addresses.

Related: Binary, Bit, Byte
Bit

The smallest unit of data in computing, representing a single binary digit (0 or 1). It is the basic building block for all digital information.

Related: Byte, Binary
Byte

A unit of data consisting of 8 bits. It is commonly used to represent a single character (e.g., in ASCII) or small integer values.

Related: Bit, Binary, ASCII
ASCII

A character encoding standard that assigns numeric codes (0-127) to letters, digits, and symbols. It enables computers to represent and exchange text data.

Related: Unicode, Byte
Unicode

A universal character encoding standard that supports a wide range of characters from many writing systems, enabling consistent text representation across different platforms and languages.

Related: ASCII, Byte
Array

A data structure that stores a fixed-size sequence of elements of the same type in contiguous memory locations. Elements are accessed by index.

Related: Linked List, Stack, Queue
Linked List

A dynamic data structure consisting of nodes, each containing data and a reference (link) to the next node. It allows efficient insertion and deletion but slower access than arrays.

Related: Array, Stack, Queue
Stack

A linear data structure that follows the Last-In-First-Out (LIFO) principle. Elements are added and removed from the same end, called the top.

Related: Queue, Array, Recursion
Queue

A linear data structure that follows the First-In-First-Out (FIFO) principle. Elements are added at the rear and removed from the front.

Related: Stack, Array, Linked List