The Turing Guide

(nextflipdebug5) #1

50 | 6 TURING’S GREAT INVENTION


the foundations of mathematics. No-one could have guessed that anything of practical value
would emerge from his highly abstract research, let alone a machine that would change all our
lives.
As everyone knows, the way to make a computer do the job we want (word-processing,
say) is simply to locate the appropriate program in its memory and start it running. This is the
‘stored-program’ concept and it was Turing’s invention in 1936.^1 His fabulous idea, a product of
pure thought, was of a single processor, a single slab of hardware, that could change itself seam-
lessly from a machine dedicated to one type of work into a machine dedicated to a completely
different job—from calculator to word-processor to chess opponent, for example. It did this by
making use of programs—sequences of coded instructions—stored inside its memory.
Turing called his invention the ‘universal computing machine’; we now call it the universal
Turing machine. If Isaac Newton had known about it, he would probably have wished that
he had thought of it first. Nowadays, though, when nearly everyone owns a physical realiza-
tion of Turing’s universal machine, this idea of a one-stop-shop computing machine is apt to
seem as obvious as the wheel and the arch. But in 1936, when engineers thought in terms of
building different machines for different purposes, Turing’s vision of a universal machine was
revolutionary.


The hardware


For the next few years Turing’s revolutionary ideas existed only on paper. He was interested
right from the start in building his universal machine, but knew of no viable technology for
doing so.^2
The leading digital technology of the time, widely used in telephone exchanges, punched-
card calculating equipment, and elsewhere, was the relay, an electromagnetically controlled
switch. But relays were too slow, too bulky, and too unreliable to offer much promise as the
basis for an engineered universal Turing machine. Nevertheless, the German computer pioneer
Konrad Zuse used relays to build what were recognizably computers of a sort. His third try
at building a relay-based computer—later dubbed Z3, for ‘Zuse 3’—ran successfully in 1941.
However, Zuse’s machines did not incorporate the stored-program concept.^3 In the United
States, too, Howard Aiken used relays to build a large-scale computer (the Harvard Mark 1),
but again this incorporated no facility for storing programs inside the memory.
A crucial moment came in 1944, when Turing set eyes on Tommy Flowers’ racks of high-
speed electronic code-cracking equipment at Bletchley Park.^4 Unlike electromagnetic com-
ponents, such as relays, electronic valves (tubes) have no moving parts except for a beam of
electrons. As related in Chapter 14, Flowers (Fig. 6.1) had pioneered digital electronics during
the 1930s, and as soon as he was introduced to the German ‘Tunny’ cipher system, in 1942,
he realized that digital electronics was the technology that the codebreakers needed to make
mincemeat of the new German cipher.
Flowers’ giant Tunny-cracking ‘Colossus’ was certainly a computer—the world’s first large-
scale electronic digital computer, in fact—but it lacked the ultra-flexibility of the universal
Turing machine. This was because Flowers had created Colossus for just one very specific pur-
pose, breaking Tunny. Nor indeed did Colossus incorporate Turing’s stored-program concept.
While Flowers was designing the computer, Max Newman, Turing’s teacher, friend, and code-
breaking colleague, had shown him Turing’s 1936 article about the universal machine, with its

Free download pdf