You are on page 1of 9

El modelo de Von Neumann1

Los primeros computadores se

programaban en realidad recableándolos. Esto

prácticamente equivalía a reconstruir todo el

computador cuando se requería de un nuevo

programa. La tarea era simplificada gracias a

un panel de contactos (muy similar al de los


Figura 1 ENIAC, primer computador electrónico
y su panel de conexiones primeros conmutadores telefónicos que eran

atendidos por operadoras, y que hoy en día sólo llegamos a ver en viajes películas en

blanco y negro. (Figura 6:) con el que era posible enlazar circuitos para crear secciones

dedicadas a una actividad específica. La programación del computador se llevaba a cabo,

literalmente, reconstruyéndolo.

Mientras que el recablear al computador establecía una clara distinción entre los

datos (representados por los estados o señales eléctricas que serían mantenidas por los

relevadores o a través de los bulbos que conformaban al computador) y el programa (las

conexiones que serían establecidas entre estos componentes del hardware) la labor de

"programación" requería sino del propio creador del computador si a un verdadero experto

y conocedor de electrónica, principios de lógica digital y del problema mismo.

Esto vino a cambiar con el concepto del programa almacenado, un concepto teórico

muy importante que fue establecido por el matemático John Von Neumann el 30 de junio

de 1945 en un borrador sobre el diseño de la EDVAC. A diferencia de los primeros

computadores, Von Neumann proponía que tanto el programa como sus datos fueran

1
Unidad de Multimedia Instruccional (UMI), Modelo de Von Neumann, Universidad de Guadalajara,
Recuperado el 26 de agosto 2013 de: http://148.202.148.5/cursos/cc206/programaciondesistemas_1_1.htm
almacenados en la memoria del computador. Esto no solo simplificaba la labor de

programación al no tener que llevar a cabo el recableado del computador sino que además

libraba y generalizaba el diseño del hardware para hacerlo independiente de cualquier

problema y enfocado al control y ejecución del programa. Este concepto fue tan importante

y decisivo que dio lugar al concepto de la arquitectura de Von Neumann, aún presente en

nuestros días. (Ver Figura 7:)

La arquitectura de Von Neumann se compone de tres elementos:

1. La Unidad Central de Procesamiento (CPU, por sus siglas en inglés), que es

considerada como el cerebro y corazón del computador. Internamente consiste de una

Unidad Aritmético-Lógica (ALU), un conjunto de registros y una Unidad de Control (CU).

La ALU es donde se realizan todas las operaciones que involucran un procesamiento

matemático (particularmente aritmético) o lógico (operaciones booleanas). Los registros

permiten el almacenamiento de datos para estas operaciones y sus resultados. En la CU es

donde se ejecutan todo el resto de las operaciones (decisión, control, movimiento de datos).

Una CPU con todos estos elementos implementada en un solo chip recibe el nombre de

microprocesador.

Figura.2 Esquema de la arquitectura de Von Neumann.


2. La memoria, que es donde datos y programa es almacenado. La memoria

puede ser visto como un arreglo unidimensional finito en la que cada localidad es

identificada por un valor asociado a su posición y que es comúnmente llamado dirección.

Existen diversos tipos de memoria, identificados por el tipo de tecnología usada, aunque

para un computador son generalmente clasificadas en dos grandes grupos por tipo de uso al

que se destina. La memoria RAM (Random Access Memory, Memoria de Acceso Aleatorio)

y que es aquella destinada al almacenamiento de datos y programas (incluyendo al sistema

operativo), es considerada temporal o de tipo volátil ya que pierde si contenido cuando el

computador es apagado, reinicializado. La memoria ROM es aquella de tipo permanente,

aun cuando al computador se le quite la energía mantendrá su contenido. Es usada

principalmente para el almacenamiento de pequeños programas destinados a la

administración básica de recursos, especialmente de entrada y salida.

3. Las interfaces de entrada y salida (I/O). destinadas a liberar de trabajo a la

CPU en la comunicación con dispositivos de entrada (teclados, ratones), salida (impresoras)

y entrada-salidas (discos, cintas).

Estos tres elementos están interconectados a través de un conjunto de líneas que

llevan instrucciones (control bus), datos (data bus) y que permiten dar los valores de

direcciones de memoria y dispositivos (memory bus).

Un ordenador con arquitectura Von Neumann realiza o emula los siguientes pasos

secuencialmente:

1. Enciende el ordenador y obtiene la siguiente instrucción desde la memoria

en la dirección indicada por el contador de programa y la guarda en el registro de

instrucción.
2. Aumenta el contador de programa en la longitud de la instrucción para

apuntar a la siguiente.

3. Decodifica la instrucción mediante la Unidad de Control. Ésta se encarga de

coordinar el resto de componentes del ordenador para realizar una función determinada.

4. Se ejecuta la instrucción. Ésta puede cambiar el valor del contador del

programa, permitiendo así operaciones repetitivas. El contador puede cambiar también

cuando se cumpla una cierta condición aritmética, haciendo que el ordenador pueda “tomar

decisiones”, que pueden alcanzar cualquier grado de complejidad, mediante la aritmética y

lógica anteriores.

5. Vuelve al paso 1.

La máquina de Von Neumann tenía 5 partes básicas: La memoria, la unidad

aritmética lógica, la unidad de control del programa y los equipos de entrada y salida. La

memoria constaba de 4096 palabras, cada una con 40 bits (0 o 1). Cada palabra podía

contener 2 instrucciones de 20 bits o un número entero de 39 bits y su signo. Las

instrucciones tenían 8 bits dedicados a señalar el tiempo de la misma y 12 bits para

especificar alguna de las 4096 palabras de la memoria.


Figura 3 Estructura de la máquina de Von Neumann.

Dentro de la unidad aritmética-lógica, el antecedente directo actual CPU (Unidad

Central de Proceso), había un registro interno especial de 40 bits llamado en acumulador.

Una instrucción típica era sumar una palabra de la memoria al acumulador o almacenar éste

en la memoria.

La máquina no manejaba la aritmética de punto flotante, porque Von Neumann

pensaba que cualquier matemático competente debería ser capaz de llevar la cuenta del

punto decimal (en este caso del punto binario), mentalmente.

Un elemento importante del hardware de la PC es la unidad del sistema, que

contiene una tarjeta de sistema, fuente de poder y ranuras de expansión para tarjetas

opcionales. Los elementos de la tarjeta de sistema son un microprocesador, memoria de

solo lectura (ROM) y memoria de acceso aleatorio (RAM).

El cerebro de la PC y compatibles es un microprocesador basado en la familia 8086

de Intel, que realiza todo el procesamiento de datos e instrucciones. Los procesadores

varían en velocidad y capacidad de memoria, registros y bus de datos. Un bus de datos

transfiere datos entre el procesador, la memoria y los dispositivos externos.


Aunque existen muchos tipos de computadoras digitales según se tenga en cuenta su

tamaño, velocidad de proceso, complejidad de diseño físico, etc., los principios

fundamentales básicos de funcionamiento son esencialmente los mismos en todos ellos.

Se puede decir que una computadora está formada por tres partes fundamentales,

aunque una de ellas es subdividida en dos partes no menos importantes. En la Figura 9: se

muestran dichas partes, llamadas genéricamente unidades funcionales debido a que, desde

el punto de vista del funcionamiento, son independientes.

Figura 4 Partes fundamentales de una computadora.

El nombre de cada parte nos indica la función que realiza. Así, la Unidad Central de

Proceso (CPU) es la que coordina el funcionamiento conjunto de las demás unidades y

realiza los cálculos necesarios; por eso la podemos subdividir en una Unidad de Control

(UC) y en una unidad de cálculo o Unidad Aritmética-Lógica (UAL).

La unidad de Memoria Principal (MP) se encarga de almacenar las instrucciones

que realizará la Unidad de Control al ejecutar un programa y los datos que serán

procesados. La Unidad de Entradas y Salidas será la encargada de la comunicación con el

exterior a través de los periféricos. Estos periféricos pueden ser: de entrada, como los

teclados; de salida, como los tubos de rayos catódicos, y de entrada y salida, como los

discos magnéticos.

Unidad de memoria principal.


La memoria principal está formada por un conjunto de unidades llamadas palabras.

Dentro de cada una de estas palabras se guarda la información que constituye una

instrucción o parte de ella (puede darse el caso de que una sola instrucción necesite varia

palabras), o un dato o parte de un dato (también un dato puede ocupar varias palabras).

A la cantidad de palabras que forman la Memoria Principal se le denomina

capacidad de memoria. De este modo, cuanto mayor sea el número de palabras mayor será

el número de instrucciones y datos que podrá almacenar la computadora.

Una palabra está formada a su vez de unidades más elementales llamadas bits, del

mismo modo que en el lenguaje natural una palabra está formada por letras. Cada bit solo

puede guardar dos valores, el valor 0 o el valor 1; por eso se dice que son elementos

binarios.

El número de bits que forman una palabra se llama longitud de palabra. Por regla

general, las computadoras potentes tienen memorias con longitud de palabra grande,

mientras que las computadoras pequeñas tienen memorias con longitud de palabra menor.

En la Figura 10: se muestra cómo se puede estar organizada una memoria principal.

0 0 1 2 3 4 5 6 7 8 9

3 B B B B B B B B

7 6 5 4 3 2 1 0

4 1 0 0 1 1 0 1 0

6
7

Figura 5 Organización de una memoria.

Puede decirse que es necesaria la comunicación entre el interior de la computadora

y su entorno o periférica. Esta comunicación se consigue a través de dispositivos de muy

diversos tipos, como son: teclados, impresoras, pantallas, discos magnéticos, etc.

Es estos dispositivos se les conoce con el nombre genérico de periféricos. En la

Figura 11: se muestran algunos periféricos conectados a la Unidad de E/S, la cual hace de

intermediaria entre los periféricos y la CPU. Las flechas indican el sentido en que fluye la

información.

Figura 6 La unidad de entrada y salida hace de intermediaria entre la CPU y los periféricos.

La coordinación de la comunicación entre los periféricos y la CPU la realiza la

Unidad de E/S. Obsérvese que esta no es un periférico sino un dispositivo que gestiona a

los periféricos siguiendo las órdenes de la CPU; es decir, la Unidad de E/S recibe de la

Unidad de Control información sobre el tipo de transferencia de datos que debe realizar (si
es de entrada o de salida) y periférico que debe de utilizar; si es de salida recibirá también

el dato que debe enviar y el momento de la operación.

Conteste las siguientes preguntas.

1. ¿Cómo se programaban las primeras computadoras?

2. ¿Qué conocimientos debían de poseer los primeros programadores?

3. ¿Qué es un programa almacenado y quien lo propuso?

4. ¿Qué ventajas ofrece un programa almacenado?

5. Mencione los tres elementos de la arquitectura de Von Neumann

6. ¿Qué función realiza la ALU?

7. ¿Qué función lleva a cabo la unidad de control?

8. ¿Qué es dirección de memoria?

9. Defina memoria RAM y memoria ROM

10. ¿Qué es una interface de entrada/salida?

11. Que pasos realiza una computadora con la arquitectura de Von Neumann?

12. ¿A qué se le conoce como acumulador dentro de la ALU?

13. ¿Qué función hace el bus de datos?

14. ¿A qué se le llama capacidad de memoria?

15. ¿A qué se le denomina palabra?

16. ¿Qué valores guarda un bit?

17. ¿Qué es longitud de memoria?

You might also like