Computador de programa almacenado

(Redirigido desde «Programa almacenado»)

Un computador de programa almacenado es el que almacena las instrucciones del programa en la memoria electrónica.[1]​ Con frecuencia la definición es extendida con el requerimiento de que el tratamiento en memoria de datos y programas sea intercambiable o uniforme.[2][3][4]

Un computador con una arquitectura de von Neumann almacena los datos y las instrucciones del programa en la misma memoria. Un computador con una arquitectura Harvard tiene memorias separadas para almacenar los datos y los programas.[5][6]

El computador de programa almacenado a veces es usado como sinónimo de la arquitectura de von Neumann,[7][8]​ sin embargo el profesor Jack Copeland considera que es "históricamente inapropiado referirse a los computadores electrónicos digitales de programa almacenado como 'máquinas de von Neumann'".[9]​ Hennessy y Patterson escriben que las primeras máquinas de Harvard fueron consideradas como "reaccionarias por los defensores de los equipos de programa almacenado".[10]

La idea de computador de programa almacenado se remonta al concepto teórico de una máquina universal de Turing en 1936.[11]​ Von Neumann era consciente de este papel, y lo inculcó también en sus colaboradores.[12]

Muchos de los primeros computadores, como el Atanasoff Berry Computer, no eran reprogramables. Ellos ejecutaban un único programa cableado. Como no había instrucciones de programa, no era necesario el almacenamiento para el programa. Otros equipos, aunque programables, almacenaban sus programas en cintas perforadas que, según fuera necesario, eran alimentadas físicamente en la máquina.

En 1936, Konrad Zuse también anticipó en dos solicitudes de patente, que las instrucciones de la máquina pueden ser almacenadas en el mismo almacenamiento usado para los datos.[13]

El Manchester Baby (SSEM), desarrollado por la Universidad de Mánchester es generalmente reconocido como el primer computador electrónico del mundo que corría un programa almacenado, un evento que ocurrió el 21 de junio de 1948.[14][15]​ Sin embargo el SSEM no fue considerado como un computador de pleno derecho, sino más una prueba de concepto que fue construido para producir el computador Manchester Mark I. El 6 de mayo de 1949 el EDSAC en Cambridge corrió su primer programa, y debido a este evento, es considerado "el primer computador de programa almacenado regular completo y completamente operacional".[16]​ A veces se afirma que el IBM SSEC, operacional en enero de 1948, fue el primer computador de programa almacenado;[17]​ esta afirmación es controvertida, no menos debido al sistema de memoria jerárquica del SSEC, y porque algunos aspectos de sus operaciones, como el acceso a relés o unidades de cinta, fueron determinados al enchufarse.[18]

Referencias

editar
  1. Allison, Joanne (1997), Stored-program Computers, archivado desde el original el 27 de septiembre de 2011, consultado el 24 de agosto de 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. pp. 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. Consultado el 18 de mayo de 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, consultado el 27 de enero de 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. 321–322. ISBN 978-3-540-20020-8. 
  13. «Electronic Digital Computers», Nature 162, 25 September 1948: 487, doi:10.1038/162487a0, archivado desde el original el 6 de abril de 2009, consultado el 10 de abril de 2009 .
  14. Rául Rojas; Ulf Hashagen (2002). The first computers: history and architectures. MIT Press. p. 379. ISBN 978-0-262-68137-7. 
  15. Daniel Page (2009). A Practical Introduction to Computer Architecture. Springer. p. 158. ISBN 978-1-84882-255-9. 
  16. Mike Hally (2005). Electronic brains: stories from the dawn of the computer age. National Academies Press. p. 96. ISBN 978-0-309-09630-0. 
  17. Emerson W. Pugh (1995). Building IBM: shaping an industry and its technology. MIT Press. p. 136. ISBN 978-0-262-16147-3. 
  18. Olley, A. (2010). «Existence Precedes Essence - Meaning of the Stored-Program Concept». IFIP Advances in Information and Communication Technology (en inglés) 325: 169-178. doi:10.1007/978-3-642-15199-6_17.