The Manchester Small Scale Experimental Machine


a.k.a. “The Baby”




The Original SSEM Machine c. 1949

image courtesy of the Computer Conservation Society website





Designed and built by both Sir F.C. Williams and Tom Kilburn at the University of Manchester, the Small Scale Experimental Machine (SSEM or also known as the “Manchester Baby”) was developed mainly to test the speed and reliability of the Williams Tube as well as its feasibility as a memory unit in a computer.  The SSEM utilized the fast random access properties of the Williams Tube to store not only the data needed for numerical computations, but also the actual program instructions.  By doing so, Kilburn and Sir Williams managed to realize the stored program concept.  This also allowed for instructions that could be read successively at electronic speeds.


Kilburn led the SSEM’s development team and work on the SSEM began in the first half of 1948.  Many of the parts that were needed were ordered from the Telecommunications Research Establishment (TRE) as this entity had already been supporting the endeavours of Sir William and Kilburn for many years prior to them transferring from the TRE to the University of Manchester.  The SSEM ran its very first program (written by Kilburn himself) on June 21, 1948 and it involved determining the highest factor of a number.  They initially started with small numbers but within a few days, they had worked up to trying the program on 218.  The correct answer was found in 52 minutes and took about 2.1 million instructions with 3.5 million data accesses.




Replica of the SSEM built at Manchester Computing for the Baby’s 50th anniversary

image courtesy of Computer 50



Specifications (provided by Computer 50)


The Small Scale Experimental Machine had the following properties:

§         32-bit word length

§         Serial binary arithmetic using 2’s complement integers

§         A single address format order code

§         A random access main store of 32 words (extendable up to 8192 words)

§         A computing speed of about 1.2 ms per instruction



Memory was implemented in a 32 * 32 bit array on a Williams Tube.  A second Williams Tube was used as an accumulator (A) and a third Williams Tube was used to hold the address of the current instruction (CI for “Control Instruction”) and the instruction itself (PI for “Present Instruction”).  A fourth tube could be used as the Display Tube, which could be switched to provide a display of the current contents of any one of the Williams Tubes.



The instruction format was:


3-bit function field (bits 13 to 15) –- 13-bit store address (0 to 12) – 16 bits unused



The SSEM had seven instructions:

§         A = -S

§         A = A – S

§         S = A

§         If A < 0, CI = CI + 1 (i.e. if A is negative, skip the next instruction)

§         CI = S

§         CI = CI + S

§         Halt the program



§         A = value of Accumulator

§         S = contents of the word with address S

§         CI = Control Instruction



Input to the SSEM was be using a simple keyboard to set sequences of bits at chosen addresses.  Output from the SSEM was obtained by reading the information on the Display Tube.



Prev Page | Top | Next Page



Introduction | F.C. Williams | Tom Kilburn | The Williams Tube

SSEM | Manchester Mark I | Ferranti Mark I | Programming the Ferranti | Other People Involved

Links and References



Created by Reginald Tiangha for CPSC 509

Summer 2003