Send a link to your students to track their progress
240 Terms
1
New cards
Accumulator
A storage register in the ALU that holds data temporarily while the data is processed and before it is transferred to memory.
2
New cards
Address Bus
Carries the address of an instruction or data. From the CPU to the memory unit
3
New cards
ALU (Arithmetic Logic Unit)
The part of the CPU that perform basic arithmetic and logic operations (add, subtract, multiply and divide).
4
New cards
Bus
Communication lines that transfer data between components inside a computer
5
New cards
Cache
Memory inside the processor providing fast access to frequently used instructions and data.
6
New cards
Clock speed
The speed/frequency at which the internal clock generates pulses. Measured in Hertz and is generated by a crystal or oscillator located somewhere on the motherboard.
7
New cards
Control bus
This bus carries command and control signals to and from every other component of a computer.
8
New cards
Control unit
Decodes instructions. Sends signals to control how data moves around the CPU
9
New cards
Core
A processing unit within a CPU
10
New cards
CPU (Central Processing Unit)
The key component of a computer system, which contains the circuitry necessary to decode and execute a program
11
New cards
Current Instruction Register (CIR)
Register that stores the instructions that the CPU is currently decoding/executing
12
New cards
Data Bus
Used by the CPU to send and receive data.
13
New cards
Fetch-Decode-Execute Cycle
The process of retrieving an instruction from memory, decoding it and carrying it out
14
New cards
Harvard architecture
Instructions and data stored in separate memory units
15
New cards
Each memory unit has its own bus
16
New cards
Reading and writing data can be done at the same time as fetching an instruction.
17
New cards
Memory Address Register (MAR)
Holds the address in memory of the instruction at present being executed. Located in the CPU
18
New cards
Memory Data Register (MDR)
a register that contains the data value being fetched or stored.
19
New cards
Pipelining
A technology that allows a processor to begin executing an instruction before completing the previous instruction.
20
New cards
Program Counter (PC)
The register that contains the address of the next instruction to be executed
21
New cards
Register
Tiny areas of fast memory located in the CPU
22
New cards
Designed for a specific purpose, where data or control information is stored temporarily
23
New cards
Von Neumann Architecture
A processor where data and instructions are stored in the same memory and accessed via buses.
24
New cards
Merge sort
A divide and conquer algorithm. A list is repeatedly divided into smaller lists eventually containing just one item. Each element is compared with the adjacent list and merged back together from two lists into one
25
New cards
Linear search
Examining each data item in turn until the item is found or the end of the data structure/file is reached.
26
New cards
Dijkstra's shortest path
A graph search algorithm that finds the shortest path between two nodes.
27
New cards
Bubble sort
Moving through a list repeatedly, swapping elements that are in the wrong order.
28
New cards
Big O notation
A way of expressing the worst-case run-time of an algorithm, useful for comparing the speed of two algorithms.
29
New cards
Algorithm
A sequence of steps designed to perform a particular task.
30
New cards
A* algorithm
An algorithm that finds the shortest path between two nodes. Widely used in pathfinding and graph traversal. It keeps a sorted priority queue of alternate path segments along the way.
31
New cards
Visualisation
The process of turning data into a visual representation which is easier for humans to understand, interrupt and work with.
32
New cards
Problem recognition
The acknowledgement and definition of an issue that may arise during the performance of a process.
33
New cards
Problem decomposition
The process of breaking a complex problem or system into parts that are easier to conceive, understand, program, and maintain.
34
New cards
Performance modelling
This is the process of carrying out mathematical approximations of how well a system will perform.
35
New cards
Heuristics
Mental shortcuts or "rules of thumb" that often lead to an approximate solution (but not always).
36
New cards
Selection
A decision point within a computer program.
37
New cards
Procedure
A routine within a larger program that can take parameters that is used to produce structured code. Does not return a value.
38
New cards
Passing by value
A copy of the data is used, which is discarded after the procedure or function has been completed.
39
New cards
Passing by reference
The address of the data is used. This means that any changes are retained after the procedure or function has been completed.
40
New cards
Parameter passing
The process of providing a procedure, function or module with values at the point when you call it.
41
New cards
Parameter
Data structures passed into a procedure/function/subroutine when they are initially called.
42
New cards
Modularity
A technique of code design where a solution is broken down into a number of subroutines.
43
New cards
Local variable
A variable which is defined and can only be used within one part of the program.
44
New cards
Iteration
Code which is repeated a set number of times, or a variable number of times based on the evaluation of a Boolean expression.
45
New cards
IDE (Integrated Development Environment)
A programming tool that gives programmers a single environment (that is, the hardware and software environment in which the program runs) for building programs rather than using individual editors and debuggers.
46
New cards
Global variable
A variable that can be used in any part of the program.
47
New cards
Function
A section of code that may take parameters that can be called by another part of the program with the purpose of returning a value.
48
New cards
Debugging
The process of removing syntax, logical and run-time errors from computer code.
49
New cards
System outputs
Anything which exits a system in any form in order for it to operate as intended.
50
New cards
System inputs
Anything which will be required to go into a system in any form in order for it to operate as intended.
51
New cards
Solution preconditions
Any condition which must exist for the solution to work.
52
New cards
Concurrent processing
More than one operation happening at the same time.
53
New cards
Recursion
A function that calls itself.
54
New cards
Sequence
Instructions executing one after another.
55
New cards
Data mining
The analysis of a large amount of data to provide new information.
56
New cards
Backtracking
An algorithm that finds all (or some) solutions to computational problems by returning to a previously successful result to find an alternative solution. It abandons each partial success as soon as it determines that the partial solution cannot possibly be completed.
57
New cards
Binary search
A search algorithm that starts at the middle of a sorted set of numbers and removes half of the data; this process repeats until the desired value is found or all elements have been eliminated.
58
New cards
Insertion sort
Each items is taken in turn, compared to the items in a sorted list and placed in the correct position within the list.
59
New cards
Quick sort
A divide and conquer algorithm. Selecting a 'pivot' element from the list and partitioning the other elements into two sub-list according to whether they are less than or greater than the pivot.
60
New cards
Abstraction
Including only the necessary details and leaving out the unnecessary details when problem solving.
61
New cards
Abstract model
A simplification of a real system.
62
New cards
RIPA (The Regulation of Investigatory Powers Act)
Legislation which regulates the powers of public bodies to carry out surveillance and investigation, and covering interception of communications.
63
New cards
DPA (Data Protection Act)
Legislation which protects individuals from unreasonable use of their store personal data.
64
New cards
Copyright Designs and Patents Act
Legislation which gives creators of works the right to control the ways in which their material may be used.
65
New cards
CMA (Computer Misuse Act)
Legislation which makes it illegal to make unauthorised access to data; with the intent to commit further offences or modify data.
66
New cards
Truth table
The output of a logic gate/circuit for all possible combinations of inputs.
67
New cards
Logic gate diagram
A method of showing Boolean logic in a diagram using a set of symbols called logic gates
68
New cards
Karnaugh map
Method of simplifying a complex boolean calculation.
69
New cards
Half adder
A unit which adds together two input variables. A half adder can only add the inputs together and not a carry bit
70
New cards
Full adder
A unit which adds together two input variables and can also add a carry bit from another addition
71
New cards
D-type flip flop
A basic circuit that can storage one bit and flip it between values. It can only be in two stable states - representing 1 and 0.
72
New cards
Double negation
A rule or law in Boolean algebra where if you invert a term twice it is equal to its original term: NOT NOT A \= A
73
New cards
Distribution
A rule or law in Boolean algebra that permits the multiplying or factoring out of an expression.
74
New cards
De Morgan's law
Two laws in Boolean algebra:
75
New cards
1. AND and OR, or union and intersections, are dual
76
New cards
2. NOT (A and B) is the same as (NOT A) or (NOT B)
77
New cards
Commutation
A rule or law in Boolean algebra stating that the order of application of two separate terms is not important.
78
New cards
Boolean logic
A form of mathematics in which an expression is reduced to either True or False.
79
New cards
Boolean algebra
A set of rules for manipulating truth values according to truth tables.
80
New cards
Association
A rule or law in Boolean algebra that permits the removal of brackets from an expression and regrouping of the variables.
81
New cards
Undirected graph
A graph that contains edges between vertices with no specific direction associated with any edge.
82
New cards
Tuple
Another name for a database record. An immutable data structure.
83
New cards
Tree
A non-linear dynamic data structure where data items can be thought of as occurring at different levels. There are links (pointers) between items at one level and their descendants at the next.
84
New cards
Stack
A dynamic data structure, where the last item in is the first out.
85
New cards
Record
A data structure which consists of a elements of different data types. A collection of related data items for one entity.
86
New cards
Queue
A dynamic first in first out data structure.
87
New cards
Linked list
A list where each item contains the data together with a pointer to the next item.
88
New cards
Hash table
A table of information that is accessed by way of a shortened search key (the hash value). An implementation of a dictionary for key-value pairs.
89
New cards
Directed graph
A graph in which the order of the vertices in the pairs in the edge set matters.
90
New cards
Binary search tree
A data structure where each node can have only 0, 1 or 2 leaf nodes. All left nodes and all of its descendants have smaller values that the root node. All right nodes and all of its descendants have larger values than the root node.
91
New cards
Array
A set of data items of the same type grouped together using a single identifier, where each of the data items is addressed by the variable name and a subscript. A static data structure.
92
New cards
XOR (Exclusive OR)
An operation that outputs to true only if one input is true and the other input is false.
93
New cards
Unicode
A character code that enables most of the languages of the world to be symbolized with a special character identification.
94
New cards
Two's complement
Storing positive and negative numbers where the most significant bit (MSB) is a negative value and not a sign.
95
New cards
String
A sequence of characters often stored as a variable in a computer program. These characters can include numbers, letters and symbols.
96
New cards
Sign and magnitude
A method of storing positive and negative numbers in binary. The most significant bit (MSB) is a 0 for a positive number and a 1 for a negative number
97
New cards
Shift
An operation that moves the bits held in a register, called the shift register, either to the left or the right.
98
New cards
Real
A data type used to store numbers with a fractional part.
99
New cards
Primitive data type
The basic data types provided by a programming language.
100
New cards
OR
OR works by returning TRUE as long as either value being compared is TRUE.