Abstraction
the process of removing or hiding unnecessary details so that only the most important points remain.
Acceptable use policy
a set of conditions or rules that a network user must agree to comply with before they are allowed to use the network
Access control
using some form of authentication to control who has access to a computer system or network
Accumulator
a special purpose register within the CPU that stores the results of operations carried out by the ALU
Actuator
converts the output commands from a microcontroller into a mechanical action.
Address bus
carries the address of the memory location that the CPU will read horn or write to.
Algorithm
a precise method for solving a problem. It consists of a sequence of step-by-step instructions that solve a specific problem.
Algorithmic bias
behaviours in computer programs that create unfair outcomes.
Amplitude
a measurement of the distance the wave is from the x axis at a point in time. Humans perceive this as the loudness or magnitude of an analogue signal.
Analogue
using signals or data represented by a quantity that is continuously changing.
Analogue to digital conversion (ADC)
the process of converting an analogue sound into a digital representation.
Anti-malware
utility software that detects and provides protection against attacks from malicious software.
Application software (apps)
programs designed for end users such as a web browser, an email client or a spreadsheet.
Arguments
the piece(s) of data provided as input to a function.
Arithmetic logic unit (ALU)
the part of the CPU that performs arithmetic and logic operations.
Arithmetic operator
used to perform a calculation on two numbers.
Arithmetic shift
a binary shift, either left or right. When performing a right shift, the cleared positions on the left are filled with copies of the MSB. When performing a left shift, the cleared positions on the right are replaced with only Os.
Array
an organised collection of related elements that share a single identifier name and are of the same data type.
Artificial Intelligence (AI)
the ability of a digital computer or computer-controlled robot to perform tasks commonly associated with intelligent beings. Intelligent beings are those that can adapt to changing circumstances.
Ascending order
arranging items from smallest to largest (e.g. 2. 3. 4. 5.6 or a, b. c. d. e. f).
ASCII
a 7-bit binary code used to represent text, with each character assigned a value between 0 and 127.
Assembly language
a low-level language written using mnemonics. Each instruction in assembly language is equivalent to one machine code instruction.
Assignment
the act of storing a value in a variable. Uses the '=' symbol. The value on the right is stored in the variable on the left.
Asymmetric encryption
a type of encryption where two keys are used. One key encrypts the message and the other decrypts it.
Audit trail
the output from processes. documentation and automated software that identifies which person changed what code and when the change was made.
Authentication
the process of checking the identity of an individual attempting to gain access to a network . Methods of authentication include passwords. swipe cards and biometric scans.
Autonomous
a system's ability to make its own decisions.
Back door
any method by which authorised and unauthorised users are able to get around normal security measures and gain high level user access on a computer system, network or software application.
Backup and recovery
the process of creating backup copies of data and storing them in a separate location to the live working environment - possibly in the cloud - so that they can be recovered in the event of data loss or damage.
Baiting
an attack that exploits an indrvidual's greed Or Curiosity to convince a victim to divulge sensitive information to run a malware program.
Bandwidth
a measure of the capacity Of a network. The maximum volume of data (measured in bits) that can be transferred per second.
Bare metal programming
writing firmware, usually in C. that runs directly On the hardware.
Bidirectional
data flows in both directions.
Binary
data represented by just two values (e.g. high/low, on/off, 1/0).
Binary prefix
multiplies a unit by a power of 2.
Binary shift
an operation in which all the bits of a binary pattern are shifted a number of places to either the left or the right.
Bit
short for binary digit, this is the smallest unit of data in a computer. A bit can have the value 1 or 0. Corresponding to on or off. All the data in a computer system is represented as patterns of bits.
Bit depth
the number of bits used to encode a sound sample. Increasing the number of bits used increases the accuracy of the representation.
Bitmap
a digital image composed of a matrix of tiny blocks of colour called picture elements (pixels).
Bluetooth
uses radio waves to transmit data between devices over short distances. For example, between a wireless mouse and a laptop.
Boundary data
data that sits on the edge of any test conditions, either above or below.
Breakpoint
a mechanism to mark a line of code, where execution is paused. if using a debugger.
Broadband
a high-capacity transmission medium capable of transmitting multiple signals and traffic types across long distances at high speeds.
Brute force
an algorithm design that does not include any techniques to improve performance, but instead relies on sheer computing power to try all possibilities until the solution to a problem is found.
Bug
an error in program code.
Built-in
subprograms that are provided in most high-level programming languages to perform very specific common tasks.
Bus
transfers data between components of a computer system.
Bus topology
all the nodes are connected to a single cable.
Bus width
the number of wires that make up a bus - this determines the range of binary patterns that can be transmitted.
Byte
a group of eight adjacent bits that can produce 256 different binary patterns.
Carbon footprint
the amount of carbon dioxide an individual or organisation produces as a result of the energy they consume.
Carriage return
the character generated inside the computer when a user presses the Enter key on the keyboard.
Central processing unit (CPU)
the hardware component that carries out the processing in a computer.
Channel
a two-way virtual connection between a source and destination device for data transmission across a network.
Character set
a defined list of numerical character codes recognised by a computer's hardware and software,
Checksum
an error detection technique. A mathematical formula is applied to the data and the resulting checksum is transmitted with the data. The recipient computer applies the same formula to the received data and then compares the two checksums. A mismatch indicates that the data has been corrupted in transit.
Cipher text
the result of encryption performed on plain text.
CLI
command-line interface, which enables a user to interact with the computer by typing in commands.
Clock
an electronic device that 'ticks' at regular intervals and is used to synchronise the actions of the other components of the CPU. Clock speed is measured in hertz. 1 hertz = 1 cycle per second. Cloud computing - the storing of software and data on remote servers accessed through the Internet.
Code review
code is examined to identify poor programming practices. find potential vulnerabilities and check its efficiency.
Code vulnerability
a flaw in a program that compromises security, enabling an attacker to gain access to a computer system and the data within it.
Colour depth
the number of bits used to encode the colour of each pixel in a bitmap image. The more bits used, the greater the number of tones/ colours that can be represented.
Comments
a way for programmers to annotate code so that their logic is clear to the reader. Comments are not executed.
Compiler
a translator that converts high-level language source code into machine code. The source code is translated all at once and saved as object code to be executed later.
Compression
reduces the size of a file by repackaging or removing some of its data. There are two types of compression - lossless and lossy.
Computational thinking
the thought processes involved in formulating problems and their solutions so that the solutions are represented in a form that can be effectively carried out by a computer or human.
Computer architecture
the design of a computer - what hardware components it has and how they are connected.
Confidentiality
only people authorised should be allowed to access this kind of data.
Concatenation
the linking together of two or more items of information.
Concurrent processing
several processes are executed simultaneously. In a computer with a single CPU this is achieved by giving each process a time slice.
Console
the place where the output from a program is displayed. This could be directly on a device or in a window of another application, such as an IDE.
Constants
variables whose value should not be changed in the program. The names of constants are written in all upper-case letters, numbers and underscores.
Construct
a component from which something is built. Letters and numbers (i.e. a to z and 0 to 9) are the constructs we use to build our language and convey meaning. Bricks and cement are the basic constructs of a building.
Control bus
carries control signals between the control unit and other hardware components.
Control character
a character that means something other than its actual value. Both '\r' and '\n' are control characters.
Control unit (CU)
the part of the CPU that decodes instructions received from main memory and coordinates the actions of the other parts of the CPU to execute them.
Copyright
this is a law protecting the rights of the person who created their work to only use it themselves.
Corrupt file
a file that has been damaged in some way and can no longer be opened or read.
Cross compiler
is capable of generating code for a computer type other than the one it is running on.
Cryptocurrency
a digital currency in which encryption techniques are used to regulate the generation of units of currency and verify the transfer of funds.
Cyberattack
any kind of malicious attack on a computer system or network with intent to cause damage or harm.
Cybersecurity
the protection of computer systems from unauthorised access, damage and being made inaccessible.
Data breach
a breach of security leading to the accidental or unlawful destruction, loss, alteration, unauthorised disclosure of, or access to, personal data.
Data bus
holds the value being read from or written to memory.
Data capacity
the amount of data that can be stored on a secondary storage device or in a computer's memory.
Data integrity
the reliability and trustworthiness of data.
Data packet
a small amount of data sent over a network. A header is attached to the packet providing additional information, including the source and destination address.
Data structure
an organised collection of related elements. Arrays and records are two common data structures used in programming.
Data subject
a person whose data is being collected and processed.
Data transfer rate
the speed at which data is transmitted from one device to another across a network, measured in bits per second.
Data type
an attribute of a variable that specifies what kind of data it can hold. Common data types are integer, real. Boolean, character and string. The data type of a value determines the operations that can be performed upon it.
Debug
the process by which a programmer finds and corrects errors in code.
Declaration
the process of allocating memory to a variable. based on its data type.
Decomposition
breaking down into smaller parts. Both problems and solutions can be decomposed into small parts.
Decryption key
(1) an algorithm needed to recover the plain text from the corresponding cipher text by decryption; (2) in a ransomware attack, the key the victim has to pay a ransom for in order to be able to unlock their encrypted files.
Denial of service
an attack on a network that attempts to prevent legitimate users from accessing its services.
Descending order
arranging items from largest to smallest (e.g. 6, 5, 4. 3, 2, I or f, e. d, c, b, a).
Device driver
a program that relays instructions and data between the operating system and a peripheral device. Each device has its own driver.
Digital device
a physical unit of equipment that contains a computer or microcontroller such as a smartphone. tablet, smartwatch, laptop computer and digital assistants such as Amazon Echo and Google Home.
Directory
a location for storing files -sometimes called a folder.