Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Stored-program computer
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{short description|Computer that stores program instructions in electronically or optically accessible memory}} {{Use dmy dates|date=February 2023}} A '''stored-program computer''' is a [[computer]] that stores [[Instruction (computer science)|program instructions]] in electronically, electromagnetically, or optically accessible memory.<ref>{{Citation | last = Allison | first = Joanne | title = Stored-program Computers | year = 1997 | url = http://www.computer50.org/mark1/stored.html | access-date = 24 August 2011 | url-status = dead | archive-url = https://web.archive.org/web/20110927012816/http://www.computer50.org/mark1/stored.html | archive-date = 27 September 2011}}</ref> This contrasts with systems that stored the program instructions with [[plugboard]]s or similar mechanisms. The definition is often extended with the requirement that the treatment of programs and data in memory be interchangeable or uniform.<ref name="GilreathLaplante2003">{{cite book|author1=William F. Gilreath|author2=Phillip A. Laplante|title=Computer Architecture: A Minimalist Perspective|url=https://books.google.com/books?id=9DuC35atMu0C&pg=RA1-PA24|year=2003|publisher=Springer|isbn=978-1-4020-7416-5|page=24}}</ref><ref name="Reilly2003">{{cite book|author=Edwin D. Reilly|title=Milestones in computer science and information technology|url=https://archive.org/details/milestonesincomp0000reil|url-access=registration|year=2003|publisher=Greenwood Publishing Group|isbn=978-1-57356-521-9|page=[https://archive.org/details/milestonesincomp0000reil/page/245 245]}}</ref><ref name="POCA">{{cite book|first=Miles J.|last=Murdocca|author2=Vincent P. Heuring |year=2000|title=Principles of Computer Architecture|publisher=Prentice-Hall|isbn=0-201-43664-7|pages=5}}</ref> == Description == In principle, stored-program computers have been designed with various architectural characteristics. A computer with a [[von Neumann architecture]] stores program data and instruction data in the same memory, while a computer with a [[Harvard architecture]] has separate memories for storing program and data.<ref name="Page2009">{{cite book|author=Daniel Page|title=A Practical Introduction to Computer Architecture|year=2009|publisher=Springer|isbn=978-1-84882-255-9|page=148}}</ref><ref name="Balch2003">{{cite book|author=Mark Balch|title=Complete digital design: a comprehensive guide to digital electronics and computer system architecture|url=https://books.google.com/books?id=uFSRT-OIxyoC&pg=PA149|access-date=18 May 2011|year=2003|publisher=McGraw-Hill Professional|isbn=978-0-07-140927-8|page=149}}</ref> However, the term ''stored-program computer'' is sometimes used as a synonym for the von Neumann architecture.<ref name="Page2009b">{{cite book|author=Daniel Page|title=A Practical Introduction to Computer Architecture|year=2009|publisher=Springer|isbn=978-1-84882-255-9|page=153|url=https://books.google.com/books?id=X1m1tNcfWQYC&pg=PA153}}</ref><ref name="Grattan-Guinness2003">{{cite book|author=Ivor Grattan-Guinness|author-link=Ivor Grattan-Guinness|title=Companion encyclopedia of the history and philosophy of the mathematical sciences|url=https://books.google.com/books?id=2hDvzITtfdAC&pg=PA705|year=2003|publisher=JHU Press|isbn=978-0-8018-7396-6|page=705}}</ref> [[Jack Copeland]] considers that it is "historically inappropriate, to refer to electronic stored-program digital computers as 'von Neumann machines{{'"}}.<ref>{{Cite web | last = Copeland | first = Jack | author-link = Jack Copeland | title = A Brief History of Computing |at = ENIAC and EDVAC | year = 2000 | url = https://plato.stanford.edu/entries/computing-history/#ENIAC | access-date = 27 January 2010 }}</ref> Hennessy and Patterson wrote that the early Harvard machines were regarded as "reactionary by the advocates of stored-program computers".<ref name="HennessyPatterson2003">{{cite book|author1=John L. Hennessy|author-link=John L. Hennessy|author2=David A. Patterson|author2-link=David Patterson (scientist)|author3=David Goldberg|title=Computer architecture: a quantitative approach|url=https://archive.org/details/computerarchitec0003henn|url-access=registration|year=2003|publisher=Morgan Kaufmann|isbn=978-1-55860-724-8|page=[https://archive.org/details/computerarchitec0003henn/page/68 68]}}</ref> == History == The concept of the stored-program computer can be traced back to the 1936 theoretical concept of a [[universal Turing machine]].<ref name="Copeland2006">{{cite book|author=B. Jack Copeland|author-link=B. Jack Copeland|title=Colossus: the secrets of Bletchley Park's codebreaking computers|url=https://books.google.com/books?id=gfL4ky-TQOMC&pg=PA104|year=2006|publisher=Oxford University Press|isbn=978-0-19-284055-4|page=104}}</ref> Von Neumann was aware of this paper, and he impressed it on his collaborators.<ref name="Teuscher2004">{{cite book|author=Christof Teuscher|title=Alan Turing: life and legacy of a great thinker|url=https://books.google.com/books?id=0IIsoRqw9hgC&pg=PA321|year=2004|publisher=Springer|isbn=978-3-540-20020-8|page=321–322}}</ref> 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 system as needed, as was the case for the [[Zuse Z3]] and the [[Harvard Mark I]], or were only programmable by physical manipulation of switches and plugs, as was the case for the [[Colossus computer]]. In 1936, [[Konrad Zuse]] anticipated in two patent applications that machine instructions could be stored in the same storage used for data.<ref>{{citation |title=Konrad Zuses Bemühungen um die Patentanmeldung der Z3 |language=de |author-first=Susanne |author-last=Faber |date=2000}}</ref> In 1948, the [[Manchester Baby]], built at [[University of Manchester]],<ref>{{Cite journal | last1 = Williams | first1 = Frederic | author-link1 = Frederic Calland Williams | last2 = Kilburn | first2 = Tom | author-link2 = Tom Kilburn | doi = 10.1038/162487a0 | title = Electronic Digital Computers | journal = Nature | volume = 162 | issue = 4117 | pages = 487 | year = 1948 | bibcode = 1948Natur.162..487W | s2cid = 4110351 | doi-access = free }}</ref> is generally recognized as world's first electronic computer that ran a stored program—an event on 21 June 1948.<ref name="RojasHashagen2002">{{cite book|author1=Rául Rojas|author2=Ulf Hashagen|title=The first computers: history and architectures|url=https://books.google.com/books?id=nDWPW9uwZPAC&pg=PA379|year=2002|publisher=MIT Press|isbn=978-0-262-68137-7|page=379}}</ref><ref name="Page2009c">{{cite book|author=Daniel Page|title=A Practical Introduction to Computer Architecture|year=2009|publisher=Springer|isbn=978-1-84882-255-9|page=158}}</ref> However the Baby 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 another electronic digital stored-program computer.<ref name="Hally2005">{{cite book|author=Mike Hally|title=Electronic brains: stories from the dawn of the computer age|url=https://books.google.com/books?id=DKcqJJacxxwC&pg=PA96|year=2005|publisher=National Academies Press|isbn=978-0-309-09630-0|page=96}}</ref> It is sometimes claimed that the [[IBM SSEC]], operational in January 1948, was the first stored-program computer;<ref name="Pugh1995">{{cite book|author=Emerson W. Pugh|title=Building IBM: shaping an industry and its technology|url=https://books.google.com/books?id=Bc8BGhSOawgC&pg=PA136|year=1995|publisher=MIT Press|isbn=978-0-262-16147-3|page=136}}</ref> 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.<ref>{{Cite conference| last1 = Olley | first1 = A.| title = Existence Precedes Essence - Meaning of the Stored-Program Concept |conference = IFIP WG 9.7 International Conference, HC 2010 | book-title=History of Computing. Learning from the Past | volume = 325 | pages = 169–178 | year = 2010 | series = IFIP Advances in Information and Communication Technology | isbn = 978-3-642-15198-9 | url = http://individual.utoronto.ca/fofound/RevisedExistEss1.pdf|doi =10.1007/978-3-642-15199-6_17| doi-access = free }}</ref> The first stored-program computer to be built in continental Europe was the [[MESM]], completed in the [[Computer systems in the Soviet Union|Soviet Union]] in 1950.<ref>{{cite book |title=Science in Russia and the Soviet Union: A Short History |first=Loren R. |last=Graham |author-link=Loren R. Graham |publisher=Cambridge University Press |year=1993 |page=256 |isbn=9780521287890}}</ref> === The first stored-program computers === Several computers could be considered the first stored-program computer, depending on the criteria.<ref name="Reilly2003" /> * [[IBM SSEC]], was designed in late 1944 and became operational in January 1948 but was [[electromechanical]]<ref>{{cite book|author=Emerson W. Pugh|author2=Lyle R. Johnson|author3=John H. Palmer|title=''IBM's 360 and Early 370 Systems''|url=https://archive.org/details/ibms360early370s0000pugh|url-access=registration|date=1991|publisher=MIT Press|isbn=978-0-262-51720-1|page=[https://archive.org/details/ibms360early370s0000pugh/page/15 15]}}</ref> * In April 1948, modifications were completed to [[ENIAC]] to function as a stored-program computer, with the program stored by setting dials in its function tables, which could store 3,600 decimal digits for instructions. It ran its first stored program on 12 April 1948 and its first production program on 17 April<ref>{{cite book|author1=Thomas Haigh|author2=Mark Priestley|author3=Crispen Rope |title=ENIAC in Action:Making and Remaking the Modern Computer |year=2016 |publisher=MIT Press |isbn=978-0-262-03398-5 |pages=153, 157, 164, 174, 194}}</ref><ref>{{Cite book |last=Haigh |first=Thomas |url=https://eniacinaction.com/wp-content/uploads/2014/02/EngineeringtheMiracleoftheENIAC-Published.pdf |title=Engineering "The Miracle of the ENIAC": Implementing the Modern Code Paradigm |year=2014 |language=en}}</ref> This claim is disputed by some computer historians.<ref>{{cite book | url=https://books.google.com/books?id=Gh8SEAAAQBAJ&dq=ENIAC+Stored+Program&pg=PA987 | title=Milestones in Analog and Digital Computing | isbn=9783030409746 | last1=Bruderer | first1=Herbert | date=4 January 2021 | publisher=Springer }}</ref> * [[APEXC|ARC2]], a relay machine developed by [[Andrew Donald Booth|Andrew Booth]] and [[Kathleen Booth]] at [[Birkbeck, University of London]], officially came online on 12 May 1948.<ref name="birkbeck">{{cite journal|last1=Campbell-Kelly|first1=Martin|title=The Development of Computer Programming in Britain (1945 to 1955)|journal=IEEE Annals of the History of Computing|date=April 1982|volume=4|issue=2|pages=121–139|doi=10.1109/MAHC.1982.10016|s2cid=14861159}}</ref> It featured the first [[drum memory|rotating drum storage device]].<ref>{{cite book|editor1-last=Lavington|editor1-first=Simon|title=Alan Turing and his Contemporaries: Building the World's First Computers|date=2012|publisher=British Computer Society|location=London|isbn=9781906124908|page=61}}</ref><ref>{{cite web|last1=Johnson|first1=Roger|title=School of Computer Science & Information Systems: A Short History|url=http://www.dcs.bbk.ac.uk/site/assets/files/1029/50yearsofcomputing.pdf|website=Birkbeck College|publisher=University of London|access-date=23 July 2017|date=April 2008}}</ref> * [[Manchester Baby]], a developmental, fully electronic computer that successfully ran a stored program on 21 June 1948. It was subsequently developed into the [[Manchester Mark 1]], which ran its first program in early April 1949. * [[Electronic Delay Storage Automatic Calculator]], EDSAC, which ran its first programs on 6 May 1949, and became a full-scale operational computer that served a user community beyond its developers. * [[EDVAC]], conceived in June 1945 in ''[[First Draft of a Report on the EDVAC]]'', but not delivered until August 1949. It began actual operation (on a limited basis) in 1951. * [[BINAC]], delivered to a customer on 22 August 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.<ref>{{cite book |last=Hally |first=Mike |title=Electronic Brains |date=2005 |pages=40–41 |isbn=978-1862076631 |publisher=[[Granta]] |edition=First}}</ref> * In 1951, the [[Ferranti Mark 1]], a cleaned-up version of the Manchester Mark 1, became the first commercially available electronic digital computer. * The [[Bull Gamma 3]] (1952) and [[IBM 650]] (1953) were the first mass produced commercial computers, respectively selling about 1200 and 2000 units. * [[Manchester University Transistor Computer]], is generally regarded as the first transistor-based stored-program computer having become operational in November 1953.<ref name="fransman">{{cite journal |first1=T |last1=Kilburn |author-link1=Tom Kilburn |first2=R L |last2=Grimsdale |author-link2=Richard Grimsdale |first3=D C |last3=Webb |title=A transistor digital computer with a magnetic drum store |publisher=[[Cambridge University Press]] |journal=Proceedings of the IEE - Part B: Radio and Electronic Engineering |volume=103 |issue=35 |date=April 1956 |pages=390–406 |doi=10.1049/pi-b-1.1956.0079 |issn=2054-0434}}</ref><ref>{{cite journal |first=R L |last=Grimsdale |author-link=Richard Grimsdale |url=https://www.computerconservationsociety.org/resurrection/res13.htm#c |title=The Transition from Valves to Computers |journal=Resurrection |issue=13 |date=Autumn 1995 |publisher=Computer Conservation Society |issn=0958-7403}}</ref> ===Telecommunication=== The concept of using a stored-program computer for switching of telecommunication circuits is called [[stored program control]] (SPC). It was instrumental to the development of the first [[electronic switching system]]s by [[American Telephone and Telegraph]] (AT&T) in the [[Bell System]],<ref>{{cite book |first1=D.H. |last1=Carbaugh |first2=N.L. |last2=Marselos |chapter=Switching System Software |title=Fundamentals of Digital Switching Systems |editor1-first=J. C. |editor1-last=McDonald |publisher=[[Plenum Press]] |date=1983 |isbn=0-306-41224-1}}</ref> a development that started in earnest by c. 1954 with initial concept designs by [[Erna Schneider Hoover]] at [[Bell Labs]]. The first of such systems was installed on a trial basis in [[Morris, Illinois]] in 1960.<ref>{{cite journal |last1=Joel |first1=A. E. |title=An Experimental Electronic Switching System |journal=[[Bell Laboratories Record]] |date=October 1958 |volume=36 |issue=10 |pages=359–363 |url=https://worldradiohistory.com/Archive-Bell-Laboratories-Record/50s/Bell-Laboratories-Record-1958-10.pdf#page=5 |access-date=13 October 2022}}</ref> The storage medium for the program instructions was the [[flying-spot store]], a [[photographic plate]] read by an optical scanner that had a speed of about one microsecond access time.<ref>{{cite magazine |title=Electronic Central Office |magazine=Long Lines |volume=40 |issue=5 |page=16 |date=December 1960 |url=https://www.telephonecollectors.info/index.php/browse/document-repository/catalogs-manuals/bell-system-we/pubs-docs/12290-60dec-longlines-att-r/file}}</ref> For temporary data, the system used a barrier-grid electrostatic [[storage tube]]. ==See also== *[[Stored program control]] == References == {{Reflist|30em}} [[Category:Classes of computers]] [[Category:Department of Computer Science, University of Manchester]] [[Category:Discovery and invention controversies]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:'"
(
edit
)
Template:Citation
(
edit
)
Template:Cite book
(
edit
)
Template:Cite conference
(
edit
)
Template:Cite journal
(
edit
)
Template:Cite magazine
(
edit
)
Template:Cite web
(
edit
)
Template:Reflist
(
edit
)
Template:Short description
(
edit
)
Template:Use dmy dates
(
edit
)