Computer Science Glossary
Computer Science Glossary
Unit 1
► unambiguous - this means that the instructions cannot be misunderstood. Simply saying ‘turn’
would be ambiguous (i.e. unclear) because you could turn left or right. All instructions given to a
computer must be unambiguous or it won’t know what to do
► sequence -an ordered set of instructions
► algorithm -a precise method for solving a problem
► high-level programming language - a programming language that is similar to natural human
language
► flowchart -shows an algorithm as a diagram. Each step in the algorithm is represented by a symbol.
Symbols are linked together with arrows showing the order in which steps are completed
► pseudocode- a structured, code-like language that can be used to describe an algorithm
► developer- a person whose job it is to create new software
► logic- the principles and reasoning underlying the constructs and elements to be applied in solving
problems
► Variable- a ‘container’ used to store data. The data stored in a variable is referred to as a value. The
value stored in a variable is not fixed. The same variable can store different values during the course
of a program and each time a program is run
► identifier -a unique name given to a variable or a constant. Using descriptive names for variables
makes code much easier to read
► arithmetic operator -an operator that performs a calculation on two numbers
► constant- a ‘container’ that holds a value that never changes; like variables, constants have unique
identifiers
► construct- a smaller part 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
► selection -a construct that allows a choice to be made between different alternatives
► iteration -a construct that means a process is repeated. An action is repeated until a condition is met
or a particular outcome is reached. It is often referred to as a ‘loop’
► ascending order -this is arranging items from smallest to largest (e.g., 1, 2, 3)
► descending order- this is arranging items from largest to smallest (e.g., 3, 2, 1)
► traversal -travel across or through something.
► recursion -a process that is repeated. For example, a document can be checked and edited, checked
and edited and so on until it is perfect
► brute force- an algorithm design that does not include any techniques to improve performance, but
instead relies on computing power to try all possibilities until the solution to a problem is found
► divide and conquer -an algorithm design that works by dividing a problem into smaller and smaller
sub-problems, until they are easy to solve. The solutions to these are then combined to give a
solution to the complete problem
► median -the middle number when the numbers are put in ascending or descending order (e.g., if
there are 13 numbers, then the 7th number is the median). If there are an even number of items in a
list, the median is the mean of the middle two numbers (e.g., if there are 10 numbers, add the 5th
and 6th numbers together and divide the result by 2). In a binary search, the higher of the two
numbers would be chosen
► 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
► decomposition -breaking a problem down into smaller, more manageable parts, which are then
easier to solve
► abstraction- the process of removing or hiding unnecessary detail so that only the important points
remain
► Subprogram- a self-contained module of code that performs a specific task. It can be ‘called’ by the
main program when it is needed
► recursive method -a recursive method calls a function over and over until a required goal is met
Unit 2
► execution -the process by which a computer carries out the instructions of a computer program
► initialise- to set variables to their starting values at the beginning of a program or subprogram
► initialisation- the process of assigning an initial value to a variable
► assignment statement- the SET…TO command is used to initialise variables in pseudocode, for
example: SET anotherGo TO 0 SET correct TO False
► type coercion- the process of converting the value stored in a variable from one data type to another
► nested IF statement- a nested IF statement consists of one or more IF statements placed inside each
other. A nested IF is used where there are more than two possible courses of action
► relational operator -an operator that tests the relationship between two entities
► logical operator -a Boolean operator using AND, OR and NOT
► block of code- a grouping of two or more code statements
► string- a sequence of characters. They can be letters, numbers, symbols, punctuation marks or
spaces
► function- a subprogram that performs a specific task and returns a value to the main program. High-
level programming languages have a number of useful built-in functions. You can also create your
own or use functions available in online libraries
► string traversal- using a loop to cycle through each character in a string
► data structure- an organised collection of related elements. Arrays and records are two common data
structures used in programming
► array- a structure that contains many items of data of the same type. The data is indexed so that a
particular item of data can be easily found
► index- a number that identifies each element of an array in Python and Java
► Record- a data structure that stores a set of related values of different data types
► field- an individual element in a record
► validation- to check that the data entered by a user or from a file meets specified requirements
► text file- a sequence of lines, each of which consists of a sequence of characters
► file handle- a label that is assigned to a resource needed by the program. It can only access the file
through the computer’s operating system
► overwritten- if a file exists on the computer and a new file is created with the same name, the new
file is kept and the old file is written over and lost
► OOP language- an object-oriented programming language. Instead of data structures and separate
program structures, both data and program elements are combined into one structure called an
object
► local variable- a variable that is accessed only from within the subprogram in which it is created
► global variable- a variable that can be accessed from anywhere in the program, including inside
subprograms
► parameter- the names of the variables that are used in the subroutine to store the data passed from
the main program as arguments
► scope- the region of code within which a variable is visible
► built-in functions - functions that are provided in most high-level programming languages to
perform common tasks
► infinite loop- a loop that is never-ending since the condition required to terminate the loop is never
reached
► logic error an error in an algorithm that results in incorrect or unexpected behaviour
► trace table- a technique used to identify any logic errors in algorithms. Each column represents a
variable or output and each row a value of that variable
► runtime error- an error that occurs while the program is running – the operation the computer is
asked to do is impossible to execute
► Integrated Development Environment (IDE)- a package that helps programmers to develop program
code. It has a number of useful tools, including a source code editor and a debugger
► Debugger- a computer program that assists in the detection and correction of errors in other
computer programs
Unit 3
► binary information represented by only two values (e.g voltage or no voltage; on or off). There are
no communication errors or misunderstandings because there are no small differences
► digital information represented by certain fixed values (e.g., high, medium or low). Any signal
between these values would be meaningless and not used. Sending and receiving systems do not
have to be as accurate as for analogue communication
► analogue using signals or information represented by a quantity (e.g., an electric voltage or current)
that is continuously variable. Changes in the information being represented are indicated by changes
in voltage. This method requires very accurate sending and receiving systems
► binary digit (bits) the smallest unit of data that is represented in a computer. It has a single binary
value, either 1 or 0
► byte the basic combination of bits used to represent an item of information. A byte typically
consists of 8 bits
► overflow error- this condition occurs when a calculation produces a result that is greater than the
computer can deal with or store. When this happens, the microprocessor is informed that an error
has occurred
► integer a whole number (e.g., 3, 6, 9)
► most significant bit (MSB) the bit with the highest value in a multiple -bit binary number
► binary shift an operation done on all the bits of a binary value in which they are moved by a specific
number of places to either the left or right
► arithmetic shift used for signed binary numbers. When performing a right shift, the bits at the left
are replaced by copies of the most significant bit
► hexadecimal a base -16 number system. There are 16 digits, and the place values increase in powers
of 16
► character set the defined list of characters recognised by a computer's hardware and software
► encryption the process of turning information (e.g., a message) into a form that only the intended
recipient can decode, or decrypt and read. The message is encoded using an agreed method or
algorithm. This is called the key. The encrypted message is called a cipher
► pixel -short for 'picture element', the smallest single point of colour in a graphic image
► resolution -the number of pixels per inch when the image displayed (for example, on a monitor or
on paper)
► colour depth the number of bits used to encode the colour of each pixel
► sampling -taking measurements of the sound wave at regular but different intervals of time (e.g., 44
100 samples per second)
► fidelity the relationship between the original sound and the recording. The greater the fidelity, the
greater the similarity between them. Very high accuracy is called hi - fidelity or just hi - fi
► bit depth the number of bits used to encode the information from each sample. Increasing the
number of bits used increases the amount of detail contained in each sample
► nibble 4 bits or half a byte
► decimal prefix multiplies a unit by powers of 10
► binary prefix multiplies a unit by powers of 2
► compression changing the format of a data file so that the size of the file becomes smaller
► bandwidth the amount of data that can be carried on a network in a given period of time
► lossless compression compressing a file in such a way that it can be decompressed without any loss
of data
► lossy compression compression where some of the data is removed; the original file cannot be
restored when the lossy file is decompressed
► petabyte- 1 petabyte is 1000 terabytes or 1 million gigabytes
► plaintext- the text that is to be encrypted
► keystream the characters that are combined with plaintext to produce an encrypted message
► keyword the text that is chosen to generate the keystream
► ciphertext the encrypted plaintext
Unit 4
► input to enter data into a computer
► process- to change the meaning or format of some data
► output -to display or output data that has been processed (or has been stored)
► function machine a metaphor or diagram that represents a machine that takes an input. It applies a
rule such as a set of operations and delivers the answer as an output
► agent a computer system that can interpret its environment (through its sensors). It can act
autonomously upon that environment (through its effectors)
► autonomous self -directed and acts without requiring any help or guidance. Can choose its own goal
and uses its experience to achieve it
► effectors something that produces an effect by carrying out an action
► von Neumann architecture -computer system design in which the program is stored in memory with
the data
► central processing unit (CPU) hardware device that carries out the processing in a computer
► main memory / random - access memory (RAM) a temporary store for data and instructions
(programs)
► memory (RAM) – a tmeproary store for data and isntrcutions (programs)
► bus a group of connections between devices in a computer
► fetch - decode - execute cycle sequence of steps carried out repeatedly by a CPU
► writing- when the CPU sends data to memory to be stored at a given address
► reading- when the CPU retrieves the data stored at a given address
► memory address a number that uniquely identifies a (memory) storage location
► volatile memory that is erased when the power is turned off
► non - volatile memory that is not lost when the power is turned off
► read-only memory (ROM)- memory that cannot be altered and is not lost when the power is turned
off
► cache memory memory used to make up for the difference in speed between two internal
components
► cache miss when the data requested for processing by a component or application is not found in the
cache memory
► microprocessor the central unit that executes and manages the instructions passed to it
► disk thrashing a very high rate of hard disk access
► arithmetic / logic unit (ALU) the part of the CPU that performs calculations and logic operations
arithmetic operator an operator that performs a calculation on two numbers
► register a storage location inside the CPU used to hold an instruction, an address or other single
item of data
► control unit the part of the CPU that organises the actions of the other parts of the CPU
► clock an electronic device inside a CPU that 'ticks' at regular intervals and is used to synchronise the
actions of the other parts of the CPU
► gigahertz (GHz) a measure of frequency equivalent to 1000 million cycles per second
► bus width the number of wires that make up a bus. This determines the range of binary numbers that
can be communicated
► multicore processor a processor with many processors’ cores
► dual -core processor a processor with two processor cores
► single- core processor- a processor with only one processor core
► cache a temporary data store so that the data can be accessed very quickly when needed
► static RAM (SRAM)- memory that retains data bits in its memory as long as power is being
supplied and does not have to be refreshed
► secondary storage -any kind of permanent storage to which the contents of ROM /RAM are copied
(usually a hard disk, optical or solid - state device)
► magnetic storage secondary storage that works by making parts of a substance behave like a
magnet, with north and south poles to represent binary 1s and 0s
► optical storage- secondary storage that works using differences in light reflection from a material
► solid-state storage -secondary storage that works by storing charge (electrons)
► platters -rigid, rapidly rotating, magnetically coated disks within a hard disk drive
► latency refers to any kind of delay that data travelling through a network might encounter
► cloud storage secondary storage, often belonging to a third party, which is accessed via a network,
usually the internet, and so is not in the same physical place as the machine's RAM/ROM. Files
stored 'in the cloud' can be accessed from anywhere via an Internet connection
► virtualisation- any process that hides the true, physical nature of a computing resource, making it
look different, usually to simplify the way it is accessed
► Internet of things (LoT) the interconnection of digital devices embedded in everyday objects
► truth table- a table showing all possible combinations of the inputs and outputs of an operator
► Boolean something that can take only the values True or False; named after English mathematician
George Boole
► logic circuit an electronic circuit that has inputs and outputs that follow one of the Boolean
operators
► bug an error or flaw in a computer program
► operator precedence -the order in which you apply the operators (including logical operators) in a
mathematical equation
► software- the set of programs run by a computer system
► application software software that performs a task that would otherwise be done by hand, perhaps
with pen and paper
► operating system (OS) -software designed for particular hardware and which manages other
programs ' access to the hardware
► utility software -software that does a useful job for the user that is not essential to the operating
system and not the reason for using a computer in the first place
► system software- operating system and utility software
► application programming interface (API) code that allows two programs to communicate with each
other
► scheduling- the algorithm that the OS uses to allow each running process to use the CPU
► paging- the algorithm the OS uses to move programs from RAM to disk and back again when
needed, once main memory is full
► concurrent processes that run at the same time are described as being concurrent
► authentication the process of proving to a computer system who you are (e.g., using a username
andpassword)
► user interface- the way the user interacts with theoperating system
► back - up a copy of files in another location so that they are still available if the original copy is
damaged or lost. Backing up is the process of making a back -up copy
► defragmenter a utility that moves file clusters on a disk, so they are closer to each other in order to
speed up disk access
► Virus- software that is designed to make and distribute copies of itself. This is usually for a
malicious purpose
► spyware- software, possibly a virus, which is designed to be installed secretly on a computer It
records private information as the user enters it static RAM (SRAM)- memory that retains data bits
in its memory as long as power is being supplied and does not have to be refreshed
► firewall a utility that controls program access to the network, both incoming and outgoing
► What if? Question- running a computer model with a given set of inputs to see what the model
produces as an output or prediction
► heuristic a type of algorithm capable of finding a solution to a problem quickly and easily. This is
done through trial and error and educated guesswork to cut corners and remove less likely
alternatives. Heuristic algorithms don't always find the best solution, but they will usually find one
that works
► Monte Carlo method carrying out a statistical analysis of a number of random samples to get
approximate solutions to a problem. The larger the number of samples used, the more accurate the
result is likely to be
► neural networks processing information in a similar way to human brains and learning and adapting
over time. This makes them useful tools for recognising faces, identifying illnesses and quality
control, for example. Computers are normally not very good at these things
► instruction set the list of all possible commands a particular CPU knows how to carry out
► machine code the binary codes representing each of the instructions in the instruction set
► translator -a program that converts source code into machine code
► source code- the text of the program that a programmer writes
► assembler translates the mnemonics of assembly language programs into machine language
instructions for the microprocessor to carry out
► assembly language a low - level language written using mnemonics
► low - level programming language a programming language that is closely related to the CPU's
machine code
► mnemonic a short, simple acronym that represents each of the instructions in a CPU's instruction
set, e.g., LDR (load register), STR (store) and CMP (compare)
► emulator hardware or software that allows one type of computer system to behave like another
► reboot- to start a device again, e.g., turn off the computer and turn it on again
► compiler a translator that converts high - level language source code into object code, often machine
code. The source code is translated all at once and saved to be executed later
► interpreter a translator that converts high -level language source code into object code, often
machine code. The source code is translated and executed one line at a time
► object code- the translated source code. Often this will be machine code, but might also be an
intermediate code, which has to be further translated before it can be executed
Unit 5
► network an arrangement of computers and other devices connected together to share resources and
data
► network service an app running on a server which provides facilities or operations such as data
storage, printing or communications
► local area network (LAN) a network that covers a relatively small geographical area, often a single
site
► wireless local area network (WLAN)- a local area network in which connected devices use high -
frequency radio waves to communicate
► wide area network (WAN)- a network that covers a large geographical area. It connects together
two or more LANS and is usually under shared ownership. The largest wide area network is the
Internet
► personal area network (PAN)- network used for data transmission over short distances by computer
devices, such as laptops, mobile phones, tablets, media players, speakers and printers
► Bluetooth a protocol for the short -range wireless interconnection of mobile phones, computers and
other electronic devices
► client -server network a network that has at least one server to provide services to the client
computers
► peer -to - peer network- a network that doesn't have any dedicated servers. Each computer in the
network can act as client and server
► network topology describes how the devices on a network are connected together
► Internet a worldwide system of interconnected networks that enables information to be exchanged
and shared
► communication media the means by which data is transmitted between devices on a network.
Coaxial cable, fibre -optic cable and microwaves are all forms of communication media
► protocol -a set of rules that govern how communications on a network should be formatted and
what data they should include
► eavesdrop having unauthorised sight of data being sent from one computer to another over a
network
► latency refers to any kind of delay that data travelling through a network might encounter
► synchronised occurring at the same time or operating at the same rate
► checksum a technique for finding errors. A mathematical formula is applied to the data and the
resulting number value is transmitted with the data. The recipient computer applies the same
formula to the received data. It then compares the checksum sent with the data to the calculated
checksum. If the checksums don't match, the data is likely to have been corrupted. So, the recipient
computer requests the data again
► packet- a small quantity of data being sent through a network. The packet is labelled with the
sender's address (source), the recipient's address (destination), how many packets are being
transmitted and the position of this packet in the complete message
► web server -powerful computer system that stores web pages and any multimedia that the pages
might contain
► network security activities designed to protect a network and its data from threats such as viruses,
hacker attacks, denial of service attacks, data interception and theft, and equipment failure
► Denial of Service (DoS) an attack on a network that attempts to prevent legitimate users from
accessing its services
► two - factor authentication- a security check where users have to type in the code from a portable
hardware device called a secure token ' or from an SMS message sent to their mobile phone
► access control this decides which users have access to which data, and what they are allowed to do
with it
► hacking the act of gaining unauthorised access to a computer system and the data it contains
► throughput -the amount of data to pass through a system
► physical security -controlling access to critical parts of a network using physical methods (such as
locked doors) rather than software
► malware short for 'malicious software '. It is used as a generic term for any kind of software that is
designed to disrupt the use of a computer system
► USB (Universal Serial Bus)- sockets found on most modern computer systems
► cyber-attack any kind of malicious attack on a network connected device
► social engineering- any kind of attack on a computer system or network that takes advantage of how
people behave and respond to certain situations
► phishing -attempting to get confidential information by sending a user a message that appears to
come from a trustworthy person or organisation
► shoulder surfing- gaining access to information by watching someone enter it into a computer
system
► pharming- directing Internet users to a fake website that looks like a real one, in order to obtain
personal information such as passwords, account numbers, etc.
► unpatched software- software that hasn't had the latest security updates applied to it, making it
vulnerable to attack
► code vulnerability a computer program (the code) that has been written in such a way that it creates
a security issue that may be taken advantage of to gain access to the computer system or data within
its communication media the means by which data is transmitted between devices on a network.
Coaxial cable, fibre -optic cable and microwaves are all forms of communication media
► modular testing testing each block of code as it is completed to ensure the code works as expected
► audit trail a record of activities that have taken place on a computer system. This record is generated
automatically and will record what has happened and who or what made the change
► domain name this is part of the URL for a resource on the Internet. When the domain name is used,
it will be converted to the correct IP address by the domain name service (DNS) and the contact will
take place
► Internet Service Provider (ISP) an organisation that provides its customers with a connection to the
Internet
► router- a piece of networking hardware used to forward packets of data from one network to another
► HyperText Markup Language (HTML) essentially a text document that contains any text to be
Unit 6
► computing technology an all- encompassing term referring to the hardware, software and
infrastructure that underpin current and emerging computer systems
► e - waste any form of discarded electronic equipment, including computing technology
► carbon footprint the amount of carbon dioxide an individual or organisation produces as a result of
the energy they consume
► ethics a set of moral principles that govern a person's behaviour
► privacy- the right to be left alone and free from unwanted scrutiny and intrusion
► personal data- information that is personal and unique to an individual
► identity theft the stealing of someone’s personal details, such as their bank account number, sort
code or passport number, for the purpose of making purchases and running up debts in their name
► surveillance technology- CCTV, drones, number plate recognition, bugging and tracking devices
used to monitor and record people's activities, often without their knowledge
► whistle -blower- someone who draws attention to the activities of an organisation or person
believed to be acting illegally or unethically
► location - based services services that enable people to access and share real - time location
information online
► digital inclusion ensuring that everyone has affordable access to computing technology and the
necessary skills to take advantage of it
► digital divide the gap between people who are technology -empowered and those who are
technology excluded
► intellectual property (IP) a creation of the human mind that is unique and has a commercial value
► Patent- an exclusive right granted to an inventor to make, use and sell an invention for a fixed
period of time
► Creative Commons an organisation that allows people to set copyright terms for their intellectual
property. One use of a Creative Commons licence is to allow people to copy material as long as it is
not used commercially
► open -source software- software that is free to edit and redistribute
► proprietary software -software that belongs to an individual or a company. Its licence specifies that
users are not allowed to modify the source code and places restrictions on its use
► DNA deoxyribonucleic acid. It is a self -replicating material which is present in nearly all living
organisms as the main constituent of chromosomes. It is the carrier of genetic information
► nanotechnology the manipulation of matter with a size of 1 to 100 nanometres
► nanometre (nm (- millionth of a metre
► quantum mechanics- a theory that explains the nature and behaviour of matter and energy on the
atomic and subatomic level
► subatomic particle- unit of matter below the size of an atom, including the elementary particles such
as quarks that all atoms are matter are made up of
► superposition the ability of a quantum system to be in multiple states at the same time until it is
measured
► qubit -a quantum bit, the counterpart in quantum computing to the binary digit or bit of classical
computing
► superconducting circuits- electrical circuits that have zero electrical resistance
► entanglement co - dependence of the quantum states of pairs or groups of particles