5.3 Regaining meaning
Suppose for a minute that the numbers I presented above were generated by a scanner as it produced a bitmap of a photograph. Clearly, the machine on which they are stored will have to get the image back to us by means of a device that can render it into a form meaningful to the human eye – an output device. I shall shortly review such devices. However, there is still work to be done before the computer can pass digitally-encoded data to such a device. For a start it will need to have information about which device is an appropriate one; then it will have to assemble the numbers into a form suitable for that device.
Write down some ideas about what other information will be needed to present these numbers through an output device, such as a printer or a monitor. Think carefully about this.
For a start, there must be some indication of what the numbers represent – text, image, sound?
Assuming that they are part of an image, information is needed on such features as:
the height and width of the image (in pixels);
the colour scheme used;
whether the image is compressed and, if so, how. Probably other valid ideas also occurred to you.
Sending a digital representation back across the boundary is thus a three-stage process, consisting of:
identifying the output device to be used;
arranging the numbers into a form that can be handled by the output device;
interpretation of the code by the output device.
The first of these stages usually depends on a direct command from the computer user who is on the other side of the boundary. I can choose whether to send my digital image to a printer or to the screen. The final stage is carried out by specialised electronics in the output device, and need not worry us here. But what about stage 2? How does that happen?
For a digital representation to be handled by an output device the numbers that it consists of must be organised in a suitable form. This can be a simple process, but is sometimes very complex, especially in cases where the information has been compressed. All I want to do here, however, is establish how, in general, such preparation is done. Since the digital encoding now exists inside the boundary, any direct manipulation from outside is not feasible. Practically, the digital world can only be manipulated from inside by other digital things. In this case, the necessary arrangements are made by a special class of digital encoding – a program.
You will hear a lot more about programs as you progress through the course. I don't want to pre-empt any of this, so for the moment I'll just ask you to consider the following question.
From what you've learned so far, what do you think programs consist of?
There's no need for a complicated answer here. Programs inhabit the digital world, so, ultimately, they are made up of binary numbers.
Far more can be said about programs than this, but in the end they are just numbers. Inside the boundary, a program is a set of binary words. You will remember from that a word is a group of bytes, usually four. Now, each word of the program has a special significance to the machine's central processor – it stands for an instruction. And when a computer's central processor (normally referred to as its CPU, central porocessing unit) reads one of these words it carries out the instruction that the word stands for. In this way the digital world can be manipulated by the digital world itself.