MATSEC SEC Computing study materials
MATSEC SEC Computing study resources

MATSEC SEC Computing key terms

MATSEC SEC Computing · Get comfortable with the vocabulary.

Von Neumann architecture

A computer design in which one memory holds both instructions and data, and the CPU fetches, decodes and executes instructions one at a time over a shared bus.

Related: CPU (Central Processing Unit), Fetch-decode-execute cycle, RAM
CPU (Central Processing Unit)

The component that carries out program instructions by fetching them from memory, decoding them and performing arithmetic, logic or control operations.

Related: Von Neumann architecture, Fetch-decode-execute cycle, Register
Fetch-decode-execute cycle

The repeating sequence in which the CPU reads the next instruction from memory, works out what it means, then carries it out before moving on.

Related: CPU (Central Processing Unit), Register, Program counter
Register

A very small, very fast storage location inside the CPU used to hold the current instruction, memory addresses or values being calculated.

Related: CPU (Central Processing Unit), Program counter, Cache memory
Program counter

A CPU register that holds the address of the next instruction to be fetched, so execution can continue in the correct order or jump elsewhere.

Related: Fetch-decode-execute cycle, Register
RAM

Volatile main memory that holds the programs and data currently in use; its contents are lost when power is removed.

Related: ROM, Cache memory, Virtual memory
ROM

Non-volatile memory whose contents are written at manufacture and normally cannot be changed; it often stores firmware such as the boot program.

Related: RAM, Firmware
Cache memory

A small, fast memory between the CPU and RAM that keeps recently or frequently used data close to the processor to reduce waiting time.

Related: RAM, Register
Virtual memory

A technique that uses part of secondary storage as an extension of RAM, swapping pages between disk and memory so larger programs can run.

Related: RAM, Paging
Paging

Dividing memory into fixed-size blocks called pages so that programs can be stored in non-contiguous locations and swapped to disk.

Related: Virtual memory
Secondary storage

Non-volatile storage such as a hard disk, SSD or USB drive that keeps data permanently when the computer is switched off.

Related: RAM, Solid-state drive (SSD)
Solid-state drive (SSD)

Secondary storage built from flash memory chips with no moving parts, giving fast access, low power use and quiet operation.

Related: Secondary storage
Operating system

System software that manages hardware, memory, files and processes, and provides services so application programs can run on the machine.

Related: Utility software, Interrupt
Interrupt

A signal that tells the CPU to pause its current task, deal with an urgent event such as a key press or disk completion, then resume.

Related: Operating system
Firmware

Software stored permanently in hardware, such as the code that starts a device or controls an embedded system, and rarely changed by users.

Related: ROM, Embedded system
Embedded system

A small computer built into a device to perform a dedicated control task, such as a washing machine controller or a car engine unit.

Related: Firmware
IP address

A numeric label assigned to a device on a network so data can be routed to and from it, such as 192.168.1.10 in IPv4.

Related: Subnet mask, DNS (Domain Name System)
Subnet mask

A number used with an IP address to show which part identifies the network and which part identifies the host device.

Related: IP address, Router
MAC address

A unique hardware identifier burned into a network interface card, used for communication within a local network segment.

Related: IP address, Switch
DNS (Domain Name System)

A distributed service that translates human-readable domain names such as example.com into the numeric IP addresses computers use.

Related: IP address, URL
URL

The full address of a resource on the internet, giving the protocol, server name and path, for example https://example.com/page.

Related: DNS (Domain Name System), HTTP
HTTP

The request-response protocol used by web browsers and servers to transfer pages and other resources across the internet.

Related: HTTPS, URL
HTTPS

HTTP carried over an encrypted connection, so data between browser and server is protected against interception and tampering.

Related: HTTP, Encryption
Router

A device that forwards data packets between different networks, choosing a path towards the destination using IP addresses.

Related: Switch, IP address
Switch

A network device that connects devices in a local area network and forwards frames only to the port where the destination MAC address is found.

Related: Router, MAC address
Packet switching

Splitting data into small packets that travel independently across a network and are reassembled at the destination in the correct order.

Related: Router, TCP/IP
TCP/IP

The core suite of protocols for the internet: IP handles addressing and routing, while TCP ensures reliable, ordered delivery of data.

Related: Packet switching, IP address
Encryption

Scrambling data using a key so that only authorised parties can read it, protecting information during transmission or storage.

Related: HTTPS
Firewall

Software or hardware that filters incoming and outgoing network traffic against rules, blocking unauthorised access to a system.

Related: Encryption, Router
Algorithm

A finite, ordered set of unambiguous steps that solves a problem or performs a task, independent of any particular programming language.

Related: Pseudocode, Flowchart
Pseudocode

A structured, English-like way of writing an algorithm using programming constructs without the strict syntax of a real language.

Related: Algorithm, Flowchart
Flowchart

A diagram that represents an algorithm using standard symbols for processes, decisions and input or output, connected by arrows.

Related: Algorithm, Pseudocode
Linear search

A search that checks each item in a list in turn until the target is found or the list ends; it works on unsorted data.

Related: Binary search, Algorithm
Binary search

A search that repeatedly halves a sorted list, comparing the target with the middle item, which is much faster than checking every item.

Related: Linear search, Algorithm
Bubble sort

A sorting algorithm that repeatedly compares adjacent items and swaps them if out of order, moving the largest values to the end.

Related: Algorithm, Binary search
Big O notation

A way of describing how the running time or memory use of an algorithm grows as the input size increases, such as O(n) or O(log n).

Related: Binary search, Linear search
Variable

A named storage location in a program whose value can be changed while the program runs, with a type and a scope.

Related: Data type, Constant
Data type

A classification of values, such as integer, real, Boolean or string, that determines what operations can be performed on them.

Related: Variable, Casting
Constant

A named value that is set once and cannot be changed during program execution, making code clearer and safer.

Related: Variable
Iteration

Repeating a block of code a set number of times or until a condition changes, using loops such as for and while.

Related: Selection, Recursion
Selection

Choosing which block of code to run by testing a condition, using constructs such as if, else and case statements.

Related: Iteration
Function

A named block of code that performs a task, may take parameters and may return a value, and can be called repeatedly.

Related: Parameter, Recursion
Parameter

A named value listed in a function or procedure definition that receives an argument when the routine is called.

Related: Function
Recursion

A technique where a function calls itself on a smaller version of the problem, with a base case to stop the calls.

Related: Function, Iteration
Casting

Converting a value from one data type to another, for example turning a real number into an integer or a string into a number.

Related: Data type
Database

An organised collection of related data stored so that it can be searched, updated and shared efficiently by many users.

Related: Relational database, SQL
Relational database

A database that stores data in tables of rows and columns, linked by keys, and is queried using a language such as SQL.

Related: Database, Primary key, SQL
Primary key

A column or combination of columns whose value uniquely identifies each row in a table and cannot be duplicated or null.

Related: Relational database, Foreign key
Foreign key

A column in one table that refers to the primary key of another table, creating a link between the two tables.

Related: Primary key, Relational database
SQL

The standard language for creating, querying and updating relational databases, using statements such as SELECT, INSERT and UPDATE.

Related: Relational database, Primary key
Normalisation

Organising tables to reduce duplicated data and avoid update errors, usually by splitting data into related tables linked by keys.

Related: Relational database, Foreign key
Artificial intelligence

The field of computing concerned with systems that perform tasks normally needing human intelligence, such as learning or recognising images.

Related: Machine learning, Algorithm
Machine learning

A branch of artificial intelligence in which programs improve at a task by finding patterns in data rather than following fixed rules.

Related: Artificial intelligence, Training data
Training data

The labelled or example data used to teach a machine learning model so it can make predictions on new, unseen data.

Related: Machine learning
Cloud computing

Using remote servers over the internet for storage, processing or software, instead of owning and maintaining local hardware.

Related: Virtual memory, Encryption