Manchester Mark 1 | 1949
The Manchester Mark 1 is one of the earliest stored-program computers developed at the University of Manchester in the UK. It became operational in June 1948, based on the Manchester Baby, with work starting in August 1948 and the first version going live in April 1949. Between June 16 and 17, 1949, a program to search for Mersenne primes ran error-free for nine hours.
The successful operation of this machine received widespread coverage in the British press, which referred to it as an "electronic brain." This characterization sparked a long-standing debate about whether electronic computers could be truly creative, particularly among the neurology department at the University of Manchester.
The Mark 1 was designed to provide computing resources within the university and allow researchers to gain practical experience with computers, but it quickly became a prototype for Ferranti's commercial version. Development was halted by the end of 1949, and the machine was decommissioned in late 1950, replaced in February 1951 by the Ferranti Mark 1, the world’s first commercially available general-purpose electronic computer.
Historically, this computer is particularly significant for its pioneering introduction of the index register, which made it easier to sequentially read words in memory. From the development of this machine, 34 patents were filed, and many of the design ideas were incorporated into subsequent commercial products like the IBM 701 and 702, as well as the Ferranti Mark 1. The principal designers, Frederick C. Williams and Tom Kilburn, concluded through their experience with the Mark 1 that computers would be used more for scientific roles than for pure mathematics. In 1951, they began work on a successor to the Mark 1 that would include a floating-point unit, named Meg.
The machine was also known as the Manchester Automatic Digital Machine (MADM).
In 1936, mathematician Alan Turing presented the theoretical definition of a "universal computing machine" that could store programs and data on tape. He proved that such machines could solve all mathematical problems that could be formulated algorithmically. During the 1940s, Turing and others, like Konrad Zuse, developed ideas about using computer memory to store programs and data instead of relying on tape, but it was John von Neumann who was widely recognized for defining the architecture of stored-program computers. The Manchester Mark 1 was based on this architecture.
The practical realization of von Neumann computers depended on the availability of suitable memory devices. The world’s first electronic stored-program computer, the Manchester Baby, successfully demonstrated the practicality of the stored-program approach and the Williams tube, an early form of computer memory, by executing its first program on June 21, 1948. Early electronic computers typically required rewiring or were programmed through plugs and patch panels, lacking the modern characteristic of programs stored separately in memory. For instance, reprogramming the ENIAC could take days. Other researchers were also developing stored-program computers, notably the Pilot ACE at the National Physical Laboratory in the UK, the EDSAC at the University of Cambridge, and the EDVAC for the U.S. Army. The Baby and the Mark 1 were notable for using Williams tubes as their primary memory device.
From August 1948, the Baby was intensively developed as a prototype for the Manchester Mark 1, initially aimed at providing a more realistic computing facility for the university. In October 1948, Ben Lockspeiser, the UK government's chief scientist, visited the university and was so impressed by the prototype Mark 1's demonstration that he immediately signed a government contract with the local company Ferranti to produce a commercial version of the machine, the Ferranti Mark 1. In a letter dated October 26, 1948, Lockspeiser authorized Ferranti to "proceed with the construction of the electronic computing machine under the guidance of Professor F. C. Williams as we discussed." Subsequently, the development of the Mark 1 had the additional goal of providing the design basis for a commercial machine for Ferranti. The contract between the government and Ferranti was established in November 1948 and lasted for five years, estimated to be around £35,000 per year (approximately £1.38 million in 2023).
The Baby was designed by a team including Frederick C. Williams, Tom Kilburn, and Geoff Tootill. Two research students, D. B. G. Edwards and G. E. Thomas, joined the Mark 1 development team, with substantive work commencing in August 1948. This project aimed to provide an operational design that would serve as the basis for the commercial machine, while also allowing researchers to gain experience using such machines. The first version of the Manchester Mark 1, known as the Intermediary Version, was operational by April 1949. However, this initial version lacked the commands necessary to programmatically transfer data between the main store and the newly developed magnetic backup store, necessitating a manual transfer to restart the machine. This missing functionality was integrated into the final specification version, which became fully operational in October 1949. The machine included 4,050 vacuum tubes and consumed 25 kilowatts of power. To enhance reliability, a custom-built CRT made by GEC was used instead of the standard devices used in the Baby.
The Baby's 32-bit word length was increased to 40 bits, with each word capable of storing either a single 40-bit number or two 20-bit program instructions. The main store initially consisted of two double-density Williams tubes, each holding two pages of a 32×40-bit word array, and was backed up by a magnetic drum that could store an additional 32 pages. In the final specification version, the capacity increased to eight pages in the main store using four Williams tubes, along with 128 pages in the magnetic drum backup store. Initially known as the magnetic wheel, a 12-inch (300 mm) diameter drum contained magnetic tracks parallel to its surface, with each track featuring a unique read/write head. Each track held 2,560 bits, corresponding to two pages. One rotation of the drum took 30 milliseconds, during which both pages could be transferred to the CRT main memory, though the actual data transfer time varied based on the delay in bringing a page under the read/write head. Writing pages to the drum took about twice as long as reading them. The drum's rotation speed was synchronized with the central processing unit clock to allow for the addition of extra drums. Data was recorded on the drum using Manchester coding, a phase modulation technique still known today.
The machine's instruction set increased from seven in the Baby to initially 26, including hardware multiplication. By the final specification version, the instruction count rose to 30. Ten bits of each word were allocated for storing the instruction code, with a standard instruction time of 1.8 milliseconds, though multiplication was considerably slower depending on the size of the operands.
The most important innovation of the machine is considered to be the integration of the index register, which is common in modern computers. The Baby included two registers implemented in Williams tubes: the accumulator (A) and the program counter (C). Since A and C were already in use, the tube holding the two index registers was originally called the B-line and later simply named B. The contents of the registers were used to modify program instructions, allowing for convenient iteration over arrays of numbers stored in memory. The Mark 1 also included a multiplier (M) and a multiplication unit housed in a fourth tube.
Each program instruction in the Mark 1 had 20 bits allocated, with 10 bits for storing the instruction code, allowing for 1,024 (2^10) different instructions. Initially, there were 26 instructions, but this increased to 30 with the addition of function codes to programmatically control data transfer between the magnetic drum and CRT main store. In the intermediate version, programs were input through key switches, and output was displayed on the CRT in the form of dots and dashes. However, the final specification machine, completed in October 1949, benefited from an added teleprinter equipped with a 5-hole paper tape reader and punch.
In September 1948, mathematician Alan Turing was appointed deputy director of the Computing Machine Laboratory at the University of Manchester and devised a 32-digit encoding scheme based on the standard ITA2 5-bit teleprinter code, allowing programs and data to be recorded and read from paper tape. The ITA2 system mapped each of the 32 binary values representable with 5 bits to a single character. For instance, "10010" represented "D," while "10001" represented "Z." Turing made a few standard encoding adjustments, such as representing "no effect" and "line feed" with 00000 and 01000 as "/" and "@" respectively. The most common character in programs and data, the binary zero, was denoted by a slash, resulting in sequences like "///////////////." One early user suggested that Turing's choice of the slash was an unconscious reflection of Manchester's "notorious gloomy" weather.
The Mark 1 had a 40-bit word length, requiring eight 5-bit teleprinter characters to encode each word. For example, the following binary word:
10001 10010 10100 01001 10001 11001 01010 10110
would be represented on paper tape as ZDSLZWRF. Any word in the store could be set via the teleprinter keyboard, and output was sent to the printer. The machine operated internally in binary, but could perform conversions between decimal and binary as needed for input and output.
The Mark 1 did not have an assembly language defined, and programs had to be submitted in binary form encoded as eight 5-bit characters for each 40-bit word. Programmers were encouraged to memorize the modified ITA2 encoding system to facilitate their work. Data was read from and written to paper tape punches under program control. Programs were entered via a teleprinter at an average speed of 3.5 characters per second, with an average instruction execution time of 2 milliseconds. Initial benchmarks showed that an average calculation on the Mark 1 took only 1 second.
The machine supported single precision operations and could operate in both binary and decimal, thanks to its capacity to convert from binary to decimal. A notable project was carried out in 1951 by Derek H. H. Hollingsworth and Margaret J. A. Wright, who implemented a program to execute a simulation of a gas network using a dynamic model. Their algorithm employed numerical solutions to the governing equations and generated satisfactory results.
The Mark 1's major limitations stemmed from its design: no internal storage, no magnetic core memory, and an inability to handle floating-point arithmetic efficiently. This made it difficult to develop more complex mathematical models. However, its early applications included cryptanalysis, meteorology, and general scientific computing.
Despite its limitations, the Mark 1 provided essential experience in programming, error handling, and the potential of stored-program architecture. It was instrumental in proving the practicality of electronic computers for general purposes, influencing future developments in computing and solidifying the role of computers in scientific research.

