β

Stored-program computer

A stored-program computer is a computer that stores program instructions in electronic memory.[1] This contrasts with machines where the program instructions are stored on plugboards or similar mechanisms.

Often the definition is extended with the requirement that the treatment of programs and data in memory be interchangeable or uniform.[2][3][4]

Stored-program computer is sometimes used as a synonym for von Neumann architecture,[7][8] however Professor Jack Copeland considers that it is "historically inappropriate, to refer to electronic stored-program digital computers as 'von Neumann machines'".[9] Hennessy and Patterson write that the early Harvard machines were regarded as "reactionary by the advocates of stored-program computers".[10]

The stored-program computer idea can be traced back to the 1936 theoretical concept of a universal Turing machine.[11] Von Neumann was aware of this paper, and he impressed it on his collaborators as well.[12]

Many early computers, such as the Atanasoff–Berry computer, were not reprogrammable. They executed a single hardwired program. As there were no program instructions, no program storage was necessary. Other computers, though programmable, stored their programs on punched tape, which was physically fed into the machine as needed.

In 1936 Konrad Zuse anticipated in two patent applications that machine instructions could be stored in the same storage used for data.[13][14]

The University of Manchester's Manchester Small-Scale Experimental Machine (SSEM)[15] is generally recognized as world's first electronic computer that ran a stored program—an event that occurred on 21 June 1948.[16][17] However the SSEM was not regarded as a full-fledged computer, but more a proof of concept predecessor to the Manchester Mark 1 computer, which was first put to research work in April 1949. On 6 May 1949 the EDSAC in Cambridge ran its first program, making it arguably "the first complete and fully operational regular electronic digital stored-program computer".[18] It is sometimes claimed that the IBM SSEC, operational in January 1948, was the first stored-program computer;[19] this claim is controversial, not least because of the hierarchical memory system of the SSEC, and because some aspects of its operations, like access to relays or tape drives, were determined by plugging.[20] The first stored-program computer to be built in continental Europe was the MESM, completed in the Soviet Union in 1951.[21]

BINAC, delivered to a customer on August 22, 1949. It worked at the factory but there is disagreement about whether or not it worked satisfactorily after being delivered. If it had been finished at the projected time, it would have been the first stored-program computer in the world. It was the first stored-program computer in the U.S.[27]

ETL Mark III, which began development in 1954[28] and was completed in 1956, was the first stored-program transistor computer. It was created by Japan's Electrotechnical Laboratory.[29][30][31]