Stored Program Concept

A design where program instructions and data are stored in the same memory.

El Stored Program Concept es un principio fundamental en la arquitectura de computadoras, pionero por John von Neumann y otros, que dicta que las instrucciones de la computadora (el programa) se almacenan en la misma memoria que los datos sobre los que opera el programa. Esto contrasta con los primeros dispositivos de computación electrónica donde las instrucciones se cableaban o se configuraban a través de interruptores físicos y paneles de conexión. En una computadora de stored program, la unidad central de procesamiento (CPU) puede buscar instrucciones de la memoria, decodificarlas y ejecutarlas secuencialmente. Esto permite que las computadoras sean máquinas de propósito general, capaces de ejecutar cualquier programa que pueda representarse en formato binario y cargarse en la memoria. La capacidad de modificar programas en memoria también permite el self-modifying code, aunque esta práctica generalmente se desaconseja en la programación moderna por razones de seguridad y mantenibilidad. La von Neumann architecture, basada en este concepto, típicamente incluye una CPU, memoria (tanto para instrucciones como para datos), mecanismos de entrada/salida y un system bus para la comunicación entre estos componentes. Esta arquitectura forma la base de prácticamente todas las computadoras digitales modernas.

        graph LR
  Center["Stored Program Concept"]:::main
  Pre_computer_science["computer-science"]:::pre --> Center
  click Pre_computer_science "/terms/computer-science"
  Rel_advanced_propulsion_systems["advanced-propulsion-systems"]:::related -.-> Center
  click Rel_advanced_propulsion_systems "/terms/advanced-propulsion-systems"
  Rel_file_systems["file-systems"]:::related -.-> Center
  click Rel_file_systems "/terms/file-systems"
  Rel_pointer["pointer"]:::related -.-> Center
  click Rel_pointer "/terms/pointer"
  classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
  classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
  classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
  classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
  linkStyle default stroke:#4b5563,stroke-width:2px;

      

🧠 Prueba de conocimiento

1 / 4

🧒 Explícalo como si tuviera 5 años

Es como tener un libro de recetas dentro de tu cocina. En lugar de tener que construir una cocina nueva para cada comida, simplemente le dices a la cocina (computadora) qué receta (programa) seguir del libro, y utiliza los ingredientes (datos) que encuentra allí.

🤓 Expert Deep Dive

The Stored Program Concept, embodied by the von Neumann architecture, revolutionized computing by decoupling instruction logic from hardware configuration. The core innovation lies in treating instructions as data, enabling them to be fetched, processed, and even modified by the CPU itself. This unified memory space, however, leads to the 'von Neumann bottleneck,' where the shared bus between the CPU and memory limits throughput, as instructions and data compete for access. Architectures like the Harvard architecture, which use separate memory spaces and buses for instructions and data, mitigate this bottleneck but sacrifice the flexibility of unified memory. The concept's significance lies in its enabling of programmability, leading to the development of operating systems, compilers, and the vast software ecosystem we rely on today. Its theoretical underpinnings relate to Turing completeness and the universality of computation.

🔗 Términos relacionados

Requisitos previos:

📚 Fuentes