1/135
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai |
|---|
No analytics yet
Send a link to your students to track their progress
Algorithm
A sequence of steps that can be followed to complete a task.
Abstraction
The process of removing unnecessary details from a problem.
Decomposition
Breaking a problem into a number of subproblems, so that each subproblem accomplishes an identifiable task, which might itself be further subdivided.
Linear search
An algorithm that sequentially checks each element in an array or list until a match is found or the end is reached.
Binary search
An algorithm that compares a search item to the middle item of an array or list. If they do not match, half of the array or list can be eliminated and the search continues in the other half. The array or list needs to be sorted so that a binary search can be performed.
Merge sort
The merge sort is a 'divide-and-conquer' algorithm. The original array or list is broken down into smaller and smaller parts until we have individual elements. The merge sort continues by building back sorted groups until we end with the full sorted result.
Bubble sort
A bubble sort works by making passes through the array or list. Whilst making a pass, we compare neighbours and swap them if they are out of order. After a series of passes, the array or list will be sorted.
Data type
Each variable has a data type. The data type determines what kind of value the variable will hold and the set of operations that can be performed on it.
Integer
A whole number.
Real/Float
Numbers that can include fractions/values after the decimal point.
Boolean
A data type that can represent the two values True and False.
Character
Stores a single character in a fixed-length format related to a specific character set (for example ASCII).
String
This is a sequence of characters.
Variable
An identifier that represents a memory location that can store a value. This value can change during execution of a program.
Constant
An identifier that represents a memory location that can store a value. This value cannot change during execution of a program.
Array
A data structure that stores a collection of elements of the same data type under a single variable name and is accessed through an index.
Assignment
An assignment statement sets the value of a variable/constant.
Iteration
Iteration is the repetition of a block of code.
Definite iteration
is the repetition of a block of code for a set number of times. An example structure is a FOR loop.
Indefinite iteration
This is the repetition of a block of code being controlled by a condition. The number of iterations to be performed is not known when entering the block of code. Example structures are WHILE and DO LOOP UNTIL.
Selection
This is a statement allows a block of code to be executed only when a certain condition is satisfied.
Nested
When an iteration statement appears inside another iteration statement it is considered nested. When a selection statement appears inside another selection statement it is considered nested.
Random number generation
The use of algorithms to produce sequences of numbers that appear unpredictable.
Subroutine
A named 'out of line' block of code that may be executed (called) by simply writing its name in a program statement. It can be reused multiple times within a program.
Parameters
Parameters are variables which define the data to be passed into a subroutine when the subroutine is called.
Local variables
These are declared within a subroutine, exist only while a subroutine is executing, and are accessible only from within the subroutine.
Structured approach to programming
The structured approach to programming includes modularised programming, clear well-documented interfaces (local variables, parameters) and return values.
Validation routine
A routine that contains code to check the validity of data. Validity of data refers to data being reasonable/plausible/acceptable. This might involve range checks, length checks and presence checks.
Authentication routine
A routine that contains code that verifies an identity. This might involve the entry of a username and password.
Testing
Testing is a process to help the programmer to remove bugs from software and to ensure that it works correctly.
Syntax error
A syntax error is when code does not follow the rules of the language grammar. A syntax error will prevent code from being executed.
Logical error
This error is a mistake in code that causes it to produce unexpected or incorrect responses. A logical error does not prevent a program from running.
Decimal - base 10
The decimal number system (base 10) uses 10 different numerals 0,1,2,3,4,5,6,7,8,9
Binary - base 2
The binary number system (base 2) uses 2 different numerals 0,1
Hexadecimal - base 16
Hexadecimal is a number base that uses the numerals 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
Bit
The fundamental unit of information (a 1 or a 0).
Byte
A group of 8 bits.
Logical binary shift
A logical binary shift involves moving the bits of a binary number to the left or right. Vacated positions are filled by zeros.
ASCII
ASCII is a character encoding system that uses a 7-bit notation that allows for the representation of 128 unique characters.
Unicode
Introduced to support a wider range of characters due to increased communication across countries. One of the latest standards defines around 155000 characters. It can be encoded in a variety of ways with up to 32 bits per character.
Character set
A collection of characters (letters, numbers, symbols, etc.) that a computer system can process and use to represent text, with each character assigned a unique numerical code.
Pixel
This term stands for picture element. It is a single point of colour in an image.
Bitmap
A bitmap is where images are broken down into a rectangular grid of pixels. Each pixel will have its own colour value.
Analogue
Continuous data - can take any value in a given range. Between any two analogue values there is another value.
Digital
Digital data has discrete values. There are gaps (jumps) between digital data values.
ADC
An analogue to digital convertor takes samples of the analogue signal at regular intervals.
Sampling rate
A measure of the number of samples taken per second from an analogue signal to create a digital signal.
Sample resolution
A measure of how many bits are used to represent each sample.
Data compression
The process of reducing the storage space required for data by encoding the data using fewer bits than the original representation.
Huffman coding
A lossless method of data compression that produces variable-length codes where the length of the code depends on the frequency with which a symbol appears in the original data.
Run-length encoding (RLE)
A lossless method of data compression where sequences of identical data values are replaced with a single data value and the count of its repetitions.
Hardware
The physical/electronic components of the computer system.
Software
Program/code/instructions executed by the hardware.
Truth table
A representation of the output of a logical expression or circuit for all possible combinations of input variables.
Logic gate
An electronic component that takes one or more binary inputs and performs a basic logical operation (such as AND, OR and NOT) to produce a single binary output.
System software
Software that manages the computer system resources and acts as a platform to run application software.
Application software
Software that performs end-user tasks. Tasks that the user may wish to complete even without a computer (e.g. write a letter).
Utility software
Software that can help maintain a system.
Operating system (OS)
The role this system is to hide the complexities of the hardware from the user.
Low-level language
A low level language is one that is closer to the hardware and the computer's instruction set.
Machine code
The actual binary instructions that can be executed by a processor and is specific to a processor or family of processors.
Assembly language
Uses mnemonics that represent machine code instructions.
High-level language
A type of language that is more abstracted from the hardware of the computer and in which instructions are more powerful than in a low-level language.
Program translator
Anything other than machine code (assembly language, HLL code) needs to be translated first into machine code before it can be run.
Interpreter
An interpreter analyses the source code line by line.
Compiler
A _______ produces object code from the source code and translates the whole source code at once.
Assembler
An assembler translates assembly language into machine code.
Central Processing Unit (CPU)
The primary component responsible for processing data and executing instructions.
Arithmetic logic unit
A part of the processor where arithmetic and logical operations are performed.
Control unit
A part of the processor which decodes instructions, coordinates/directs the execution of instructions, and sends control signals to other components.
Clock
Synchronises operations of the computer by sending regular timing signals to the processor.
Register
A memory location on a processor that can be accessed quickly.
Bus
A series of lines (wires) that transfers data, instructions or memory addresses between components inside a computer.
Clock speed
The frequency of pulses sent to coordinate the components of the computer, measured in hertz.
Core
A processing unit within a processor where each core can fetch, decode and execute instructions independently of the other cores.
Cache
A small area of fast memory built into a modern processor that holds frequently used instructions and data that the processor is likely to reuse.
Volatile storage
A storage device that does not retain data contents when power is removed.
Non-volatile storage
A storage device that will retain data contents even when power is removed.
RAM (Random Access Memory)
Volatile main memory used to hold currently running programs and associated data.
ROM (Read Only Memory)
Non-volatile main memory used to hold instructions that are needed for the computer to run especially when the computer is turned on.
Secondary storage
Any non-volatile storage mechanism not directly accessible by the CPU.
Solid state
Devices that use non-volatile memory to store data, have fast data access and write speeds, and are durable as they do not have any moving parts.
Magnetic
Devices such as hard-disk drives that have a spinning disk and use magnetic fields to represent 0s and 1s.
Cloud storage
Storing data at a remote location, using magnetic and/or solid state storage, and allowing online access via the Internet.
Embedded system
A computer system built into a larger device.
Computer network
A group of devices connected together so that they can communicate.
PAN (Personal Area Network)
Devices connected and communicating over a small distance around one person.
LAN (Local Area Network)
Devices connected and communicating over a small geographical area.
WAN (Wide Area Network)
Devices connected and communicating over a large geographical area.
Network protocol
A set of rules that allow devices/networks to communicate/transfer data.
TCP - Transmission Control Protocol
TCP is a transport layer protocol. It is used to establish communication between two end points and ensure that this is error free.
IP - Internet Protocol
IP is an internet layer protocol. IP is responsible for routing.
HTTP/HTTPS
An application layer protocol concerned with sending and receiving web pages between a webserver and a client (browser). This adds encryption to the protocol allowing for secure data movement.
SMTP
An application layer protocol. To send emails to another email server/client.
IMAP
Internet Message Access Protocol. An application layer protocol. To receive emails from an email server. To allow management of emails on the server.
Authentication
Authentication is the process of confirming someone is who they say they are.
Encryption
Using an algorithm to convert a message into a form that is not understandable without the key to decrypt it.
MAC address (Media Access Control address)
A unique identifier assigned to a network device.
Firewall
A firewall is a network security device that monitors incoming and outgoing network traffic and decides whether to allow or block specific traffic based on a defined set of security rules.
MAC address filtering
MAC address filtering allows devices to access, or be blocked from accessing, a network based on the physical address embedded within the device's network adapter.