Digital communication is based on numeric codes. At the lowest level we are talking about simple 1s and 0s - 'ons' and 'offs'. This is called a 'binary system' because it uses only two values (the 'decimal system' you use in your daily life uses 10 values from 0 to 9).
Simple electronic circuits can be designed to do things like adding and subtracting small numbers, and these can be combined to make simple machines. These simple machines can be wired together to make more complicated ones, and these in turn can be combined to make machines that can control everything from fridges to spaceships, play chess or recognise people's faces.

In a binary system, each unit of information can take one of two values - on or off, 1 or 0. This unit is often called a 'bit' - short for Binary digit.
For convenience, bits are often packaged up as a group of 8 and called a 'byte'. The size of a computer's memory and its hard disk space is measured by the number of bytes, and is usually several million these days.
A byte of information can take 256 values depending on the combination of 1s and 0s in each of its bits, and can be used in many different ways to represent different things. For example, a computer keyboard uses a code called 'ASCII' (American Standard Code for Information Interchange) to represent all the letters of the alphabet.


If you combine enough simple logic elements together you can assemble a very complicated machine. As manufacturing techniques have become more sophisticated, these components have been made ever smaller, so that today's microprocessors contain thousands of tiny components embedded in a single chip.
But the really important thing about microprocessors is that they can follow a predefined set of instructions - a computer program. This means that they can do any number of things, depending on which program they are running - perhaps play a computer game, control a washing machine or handle the operation of a car's braking system.
What's more, microprocessors can handle several tasks at once. This means that you can load a word processor, e-mail program and a Web browser at the same time. It's all a trick of course - the processor is only making one step at any given time, but it moves from operation to operation so rapidly that it appears to be doing everything simultaneously.