Stored-program computer

A stored-program computer is one which stores program instructions in electronic memory.[1] Often the definition is extended with the requirement that the treatment of programs and data in memory be interchangeable or uniform.[2][3][4]

Description

A computer with a Von Neumann architecture stores program data and instruction data in the same memory; a computer with a Harvard architecture has separate memories for storing program and data.[5][6] Both are stored-program designs.

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]

History

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 Small-Scale Experimental Machine (SSEM)[15] is generally recognized as world's first electronic computer that ran a stored programan 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 third stored-program computer to be built, and the first one in continental Europe, was the MESM, completed in the Soviet Union in 1951.[21]

Candidates for the first stored-program computer

Several computers could be considered the first stored-program computer, depending on the criteria.[22]

References

  1. Allison, Joanne (1997), Stored-program Computers, retrieved 24 August 2011
  2. William F. Gilreath; Phillip A. Laplante (2003). Computer Architecture: A Minimalist Perspective. Springer. p. 24. ISBN 978-1-4020-7416-5.
  3. Edwin D. Reilly (2003). Milestones in computer science and information technology. Greenwood Publishing Group. p. 245. ISBN 978-1-57356-521-9.
  4. Murdocca, Miles J.; Vincent P. Heuring (2000). Principles of Computer Architecture. Prentice-Hall. p. 5. ISBN 0-201-43664-7.
  5. Daniel Page (2009). A Practical Introduction to Computer Architecture. Springer. p. 148. ISBN 978-1-84882-255-9.
  6. Mark Balch (2003). Complete digital design: a comprehensive guide to digital electronics and computer system architecture. McGraw-Hill Professional. p. 149. ISBN 978-0-07-140927-8. Retrieved 18 May 2011.
  7. Daniel Page (2009). A Practical Introduction to Computer Architecture. Springer. p. 153. ISBN 978-1-84882-255-9.
  8. Ivor Grattan-Guinness (2003). Companion encyclopedia of the history and philosophy of the mathematical sciences. JHU Press. p. 705. ISBN 978-0-8018-7396-6.
  9. Copeland, Jack (2000), A Brief History of Computing: ENIAC and EDVAC, retrieved 27 January 2010
  10. John L. Hennessy; David A. Patterson; David Goldberg (2003). Computer architecture: a quantitative approach. Morgan Kaufmann. p. 68. ISBN 978-1-55860-724-8.
  11. B. Jack Copeland (2006). Colossus: the secrets of Bletchley Park's codebreaking computers. Oxford University Press. p. 104. ISBN 978-0-19-284055-4.
  12. Christof Teuscher (2004). Alan Turing: life and legacy of a great thinker. Springer. p. 321322. ISBN 978-3-540-20020-8.
  13. "Electronic Digital Computers", Nature 162, 25 September 1948: 487, doi:10.1038/162487a0, retrieved 2009-04-10
  14. Susanne Faber, "Konrad Zuses Bemuehungen um die Patentanmeldung der Z3", 2000
  15. Williams, Frederic; Kilburn, Tom (1948). "Electronic Digital Computers". Nature 162 (4117): 487. doi:10.1038/162487a0.
  16. Rául Rojas; Ulf Hashagen (2002). The first computers: history and architectures. MIT Press. p. 379. ISBN 978-0-262-68137-7.
  17. Daniel Page (2009). A Practical Introduction to Computer Architecture. Springer. p. 158. ISBN 978-1-84882-255-9.
  18. Mike Hally (2005). Electronic brains: stories from the dawn of the computer age. National Academies Press. p. 96. ISBN 978-0-309-09630-0.
  19. Emerson W. Pugh (1995). Building IBM: shaping an industry and its technology. MIT Press. p. 136. ISBN 978-0-262-16147-3.
  20. Olley, A. (2010). "Existence Precedes Essence - Meaning of the Stored-Program Concept" (PDF). IFIP Advances in Information and Communication Technology. doi:10.1007/978-3-642-15199-6_17. ISBN 978-3-642-15198-9.
  21. Graham, Loren R. (1993). Science in Russia and the Soviet Union: A Short History. Cambridge University Press. p. 256.
  22. Edwin D. Reilly (2003). Milestones in Computer Science and Information Technology, p. 245.
This article is issued from Wikipedia - version of the Tuesday, February 23, 2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.