A step by step process that describes how to solve a problem and/or complete a task, which will always give a result.

Each zero or one is called a bit. Bit is an abbreviation for Binary Digit.

An algorithm that tells us how to efficiently find a specific value in an **ordered (sorted)** list.
It is called 'binary' search because each time you look at a value in the list you divide the list into 2 parts, one is discarded and the other is kept.
The word "binary" here just means something that has two parts, such as a binary star system (made of two stars); binary search shouldn't be confused with binary numbers.

8 bits grouped together are called a byte, and computers store data in bytes. A byte is a convenient number of bits as it can store things like simple characters, small numbers, and a useful range of colours, although usually information is stored using groups of bytes.

A check digit is an extra digit added to the end of an important number such as a credit card number, product code (bar code), identity number, tax number, or a passport number, that can be used to check if the number has been typed in correctly. In some situations more than one digit is used, in which case it is referred to as a checksum.

Compression is the process of trying to make something smaller. On computers, data compression is about using a compression algorithm to reduce the size of files, so that they take up less space and can be transmitted faster. This is generally done by trying to find repeated or predictable patterns in a file and replacing them with short codes that convey they same information.

A basic operation that is part of an algorithm.

The way information is stored. Numbers are a type of data you will come across very often (e.g. account numbers, customer numbers, card numbers, serial numbers, product numbers and so on). It could also be text (such as words that we're searching for), dates, and even images and sound. You can think of anything stored in a computer's memory as data; it’s all pieces of information.

In CS Unplugged we use the term decimal number to represent all whole numbers. There are many different phrases for these numbers including whole numbers, counting in base 10, cardinal numbers and ordinal numbers. Examples of these numbers are 7, 41, 1052.

Error control is the general term for error correction and error detection systems.

Error correction is a step better than error detection; when it detects an error it tries to put the data back to how it should have been.

Error detection is a method that can look at some data and detect if it has been corrupted while it was stored or transmitted.

A specialised processor in a computer that can do simple operations for the many pixels in an image in parallel. These are often used for other computations because of their ability to do parallel processing.

A series of connected nodes such as a computer network, a road map, or a comparator network.

Using multiple processors to work on different parts of a problem at the same time.

Parity often comes up in error control as there is a well-known method
based on it.
The word "parity" has a general meaning of simply saying if a number is even or
odd.
It comes from the same root word as "pair" – **even parity** means that there is
an even number of objects (they can be put in pairs), and **odd parity** means
they can’t be put into pairs.
If you have 5 white socks, then they have odd parity, but you want them to have
even parity!
The system described in lesson plan one uses even parity, as it is slightly
easier to work with in this situation; so "even parity" is just a fancy way of
saying that there is an even number of something.

The word pixel is an abbreviation of *picture element*.
On computer screens an image is almost always displayed using a grid of tiny coloured squares, which are called pixels.

A device that can run computer programs. CPU is an abbreviation for "Central Processing Unit".

Raw data means 'unprocessed data' which has been collected from a source, and has not been cleaned up or used yet. For example, say you had measured the temperature every day of the year, and now you have a bunch of numbers, this could be called your ‘unprocessed data’. If you then divided this data into each month of the year, and averaged it so you had the average temperature for each month, this would be your ‘processed data’.

A sequential search is when you look at each piece of data, one by one, and don’t stop until you find what you are looking for.
You can use a sequential search on any data, whether it is sorted or unsorted (though it would be potentially a slow way to locate what you are looking for if the data is in sorted order!)
However, sequential search is the **only** option you can use when you need to search through data that is **unsorted**.

Running a program on a single processor, so all the instructions are executed one after the other.