Академический Документы
Профессиональный Документы
Культура Документы
:
:
Por tanto, para que un programa pueda ser ejecutado por una computadora,
ste ha de estar almacenado en la memoria central. La unidad central de
1.1.
1.2.
2.
Interrupcin
Ejecucin
2.1.
El ciclo de captacin
Tiene lugar al principio de cada ciclo de instruccin, y hace que una instruccin
sea captada de la memoria. En este ciclo hay 4 registros implicados:
Registro de direccin de memoria ( Memory Address Register MAR) :
Esta conectado a las lneas de direccin del bus del sistema. Especifica la
direccin de memoria de una operacin de lectura o escritura.
Registro intermedio de memoria (Memory Buffer Register MBR) : Esta
conectado a las lneas de datos del bus del sistema. Contiene el valor a
almacenar en memoria o el ultimo valor leido de memoria.
Contador de Programa (Program Counter PC) : Contiene la direccin
de la siguiente instruccin a captar.
Registro de instruccin (Instruction Register IR) : Contiene la ultima
instruccin captada.
MA
R
MB
R
PC
IR
AC
MAR 0000101000101010
MBR
0000101000101010
PC
IR
AC
Inicio
MA
R
MB
R
PC
IR
AC
0000101000101010
Primer Paso
0000101000101010
MAR 0000101000101010
0010000000100000
MBR 0010000000100000
0000101000101011
PC
IR
AC
Segundo Paso
0000101000101011
0010000000100000
Tercer Paso
2.2.
El ciclo indirecto
Una vez que se capta una instruccin, el siguiente pasos es captar los
operandos fuente. Siguiendo con el ejemplo, supongamos un formato de
instruccin de una direccin, que permite direccionamiento directo e indirecto.
Si la instruccin especifica una direccin indirecta, un ciclo indirecto ha de
preceder al ciclo de ejecucin. El flujo de datos, incluye las sgtes.
microoperaciones:
t1: MAR IR (Direccin)
t2: MBR Memoria
t3: IR(Direccin) MBR(Direccin)
2.3.
El ciclo de interrupcin
2.4.
El ciclo de Ejecucin
10
cargada en MBR (Registro Intermedio de Memoria). Por ultimo la ALU suma los
contenidos de R1 y MBR. En realidad, este es un ejemplo simplificado, ya que
pueden necesitarse operaciones adicionales para extraer la referencia a
registro desde IR y, tal vez, para poner las entradas o salidas de la ALU en
algunos registros intermedios.
Ejemplo 2 : ISZ X
Esta instruccin incrementa y salta si cero (Increment and Skip if Zero), por lo
tanto el contenido de la posicin X se incrementa en 1. Si el resultado es 0, la
siguiente instruccin se salta. Una posible secuencia de microoperaciones es:
t1
t2
t3
t4
:
:
:
:
MAR IR (direccin)
MBR Memoria
MBR (MBR) + 1
Memoria (MBR)
Si ((MBR) = 0) entonces ( PC = (PC) + Longitud de instruccin)
3. Resumen
Hemos visto como cada fase del ciclo de instruccin puede ser
descompuesta en una serie de micro-operaciones elementales. En nuestro
ejemplo, hay una secuencia para cada subciclo, o sea que hay una secuencia
de micro-operaciones por cada cdigo operativo ( COD OP )
Para completar la imagen, necesitamos enlazar estas secuencias de
micro-operaciones, lo que es indicado en la figura a continuacion, donde
suponemos tener un nuevo registro de dos bits, denominado Cdigo del Ciclo
de Instruccin (ICC), el cual indica el estado de la UCP para cada porcin del
ciclo que se est ejecutando. Segn lo indicado en la figura, estos estados
corresponden a:
00 : Bsqueda
01 : Indirecto
10 : Ejecute
11 : Interrupcin
Al final de cada uno de los cuatro sub-ciclos, ICC es cargado
apropiadamente. El ciclo indirecto siempre es seguido por el de ejecucin. El de
interrupcin siempre es seguido por el de bsqueda y finalmente para ambos,
el de bsqueda y el de ejecucin el prximo sub-ciclo depende del estado del
sistema.
11
12