lunes, 15 de octubre de 2018

Fase de busqueda y ejecucion de una instrucción

FASE DE BÚSQUEDA DE UNA INSTRUCCIÓN

En esta fase se realiza la búsqueda en memoria de la instrucción cuya direccion guardada el registro contador de programa y se almacena en el registro de instrucción.

Ejemplo
SUMAR 033 992 993 (sumar los contenidos de las posiciones de memoria 033 y 992, almacenando el resultado en la posición 993)
Código de operación (CO): SUMAR
Dirección del primer sumando (OP1): 033
Dirección del segundo sumando (OP2): 992
Dirección del resultado (OP3): 993

  1. La unidad de control envía una microorden para que el contenido del registro contador de programa que contiene la dirección de la siguiente instrucción, sea transferido al registro de dirección de memoria.

2. La posición de memoria que figuran en el registro de dirección de memoria es utilizada por el selector para transferir su contenido al registro de intercambio de memoria.


3. Se transfiere la instrucción desde el registro de intercambio de memoria la registro de instrucción.


4. Posteriormente el decodificar procede a interpretar la instrucción que acaba de llegar al registro de instrucción, en esta caso SUMAR, quedando dispuesto para la activación del circuito sumador de la UAL e informando al secuenciador.


5. El registro contador de programa se autoincrementa con un valor 1 de tal forma que quede apuntado a la siguiente instrucción situada consecutivamente en memoria. Si la instrucción en ejecución es de ruptura de secuencia, el contador de programa se cargara con la dirección que corresponda.


FASE DE EJECUCIÓN DE UNA INSTRUCCIÓN

En esta fase se realiza la operación indica por la instrucción y si esta lo precisa se almacena el resultado en los registros internos de la CPU o en la memoria. La fase de ejecución se realiza en los siguientes pasos, pero hay que tener en cuenta que si la instrucción no tuviste operando, los pasos del 1 al 6 y el paso 8 se omitirían.


  1. Se transfiere la dirección del primer operando desde el registro de instrucción al registro de dirección de memoria.

2. El selector extrae de la memoria dicho dato depositándolo en el registro de intercambio de memoria.



3. Se lleva este operando desde este registro de entrada 1 de la UAL.


4. Se transfiere la dirección del segundo operando desde el registro de instrucción al registro de memoria.


 

5. El selector extrae de la memoria dicho dato y lo deposita en el registro de intercambio de memoria.

 

6. Se lleva este operando desde este registro al registro de entrada 2 de la UAL.

 

 7. El secuenciador reenvia una microordena la UAL para que se ejecute la operacion. El resultado de la operacion queda almecenado en el acumulador.

 

 8. Este resultado se envia desde el acumulador al registro de intercambio de memoria.

 

9. Se transfiere desde el registro de instruccion al registro de direccion de memoria la direccion donde ha de almacenarse el resultado en la memoria.

 

10. Se transfiere el resultado desde el registro de intercambio de memoria a la direccion de memoria indicada en el registro de direccion de memoria.

 

No hay comentarios:

Publicar un comentario

GLOSARIO DE LINUX

TEMA 11: GLOSARIO LINUX Linus Torvals:  Es un ingeniero de software finlandés-estadounidense conocido por crear y mantener el desa...