 |
 |
 |
 |
 |
 |
 |
 |

© Nature
Publishing
Group
2006 |
|
 |
The first stored-program computer
The modern computer was born on 21 June 1948, when the University of Manchester's Small-Scale Experimental Machine, nicknamed the 'Baby', successfully executed its first program. Designed and built by F. C. Williams and Tom Kilburn*, the Baby kept only 1,024 bits in its main store, but it was the first computer to store a changeable user program in electronic memory and process it at electronic speed.
Nature 162, 487 (1948)
| click here for a PDF version (116 K)|
*Click here for an obituary of Tom Kilburn.
|
Electronic Digital Computers
A small electronic digital computing machine has been operating successfully for some weeks in the Royal Society Computing Machine Laboratory, which is at present housed in the Electrical Engineering Department of the University of Manchester. The machine is purely experimental, and is on too small a scale to be of mathematical value. It was built primarily to test the soundness of the storage principle employed and to permit experience to be gained with this type of machine before embarking on the design of a full-size machine. However, apart from its small size, the machine is, in principle, 'universal' in the sense that it can be used to solve any problem that can be reduced to a programme of elementary instructions; the programme can be changed without any mechanical or electro-mechanical circuit changes.
The essential parts of such a machine are: (1) a store for information and orders; (2) various arithmetical organs (for example, adders, multipliers); (3) a control unit1.
The present machine contains the minimum set of facilities for a universal machine, namely: (a) If x is any number in the store, x can be written into a central 'accumulator' A; or x can be subtracted from what is in A. (b) The number A can be written in an assigned address in the store. (By means of (a) and (b) addition or direct writing into A can be programmed.) (c) The content of A can be tested for whether x ³ 0, or x < 0; if x < 0 the order standing next in the store is passed over. This gives the essential power of branching routines. (d) Control can be shifted to an assigned order in the table. (e) The machine can be ordered to stop.
The capacity of the store is at present only 32 'words', each of 31 binary digits, to hold instructions, data and working. Hence only simple arithmetic routines devised to test the machine can be run. Examples of problems that have been carried out are: (1) Long division by the standard process. (For (230 1)/31, this took 11/2 seconds, the quotient being given to 39 significant binary figures of which the 13 least significant, to the left of the binary point, were zero, since 31 is a factor of 230 1.) (2) H.C.F. by the standard process. (For 314,159,265 and 271,828,183, which are co-prime, approximately 0.5 second.) (3) Factorizing an integer. For (3) the method was deliberately chosen to give a long run the result of which could be easily checked. Thus the highest proper factor of 218 was found by trying in a single routine every integer from 218 1 downward, the necessary divisions being done not by long division, but by the primitive process of repeated subtraction of the divisor. Thus about 130,000 numbers were tested, involving some 3.5 million operations. The correct answer was obtained in a 52-minute run. The instruction table in the machine contained 17 entries.
It will, of course, be understood that it is intended to have other arithmetical facilities, as well as a much larger store, in a full-sized machine; and that even on the present machine quicker routines could have been used. At present routines are chosen with the sole object of testing the machine as thoroughly as possible.
The development of this machine has been very actively supported by the Telecommunications Research Establishment, Great Malvern.
F. C. WILLIAMS
T. KILBURN
Electrical Engineering Laboratories,
University, Manchester 13.
Aug. 3.
- For a fuller discussion see, for example, the Royal Society discussion on computing machines, summary in Nature, 161, 712 (1948).
| return to looking back index page |
�
|