Estructura y Registros Internos 80C88 PDF
Estructura y Registros Internos 80C88 PDF
Estructura y Registros Internos 80C88 PDF
(20 BITS)
BUS DE DATOS
AH AL
BH BL (8 BITS)
CH CL
REGISTROS DH DL
CS
GENERALES SP
DS
BP
SS
DI
ES
SI
IP
REGISTROS DE
BUS DE DATOS LOGICA
COMUNICACION INTERNA
ALU DE CONTROL
DE BUS
BUS 8088
(16 BITS)
REGISTROS TEMPORALES
COLA DE
INSTRUCCIONES
BUS Q
ALU SISTEMA DE
CONTROL DE 1 2 3 4
(8 BITS)
LA EU
BANDERAS
La figura 2 (b) muestra la secuencia de eventos para el 8088. Note que el bus
siempre esta ocupado. (Generalmente, si existen momentos en que el bus esta ocioso pero
no siempre). Esto es debido a las dos unidades que componen al 8088 la Unidad de
Ejecución (EU) y la Unidad de Interfaz de Bus (BIU).
U.A.B.C. Pag. 28
Sistemas Computarizados
(a)
(b)
Figura 2. (a) Operación del 8085 y actividad del bus (b) Operación de las unidades del 8088 y
actividad del bus.
U.A.B.C. Pag. 29
Sistemas Computarizados
8 bits 8 bits
AX AH AL Acumulador
BX BH BL Base Registros de
propósito
CX CH CL Contador general
DX DH DL Datos
SP Puntero de Pila
BP Puntero de Base
Registros
SI Indice Fuente
Punteros y
DI Indice Destino de Indices
Puntero de
IP Instrucción
CS Segmento de Codigo
ES Segmento Extra
U.A.B.C. Pag. 30
Sistemas Computarizados
Aunque los registros punteros y de índice también son de propósito general por
naturaleza, estos son mas utilizados como índice o punteros a una localidad de memoria
en muchas instrucciones. Estos registro incluyen:
SP (Puntero de Pila)-Usado para direccionar datos de una pila de memoria, esta pila
es de tipo LIFO (last-in, first-out). Esto ocurre cuando una instrucción PUSH o
POP es ejecutada o cuando una subrutina es llamada mediante CALL y al
retornar de una subrutina con la instrucción RET.
Registros de Segmento
U.A.B.C. Pag. 31
Sistemas Computarizados
Memoria
AFFFFH
SEGMENTO
DE SS
PILA A000
A0000H
8FFFFH
SEGMENTO ES
EXTRA
8000
80000H
3FFFFH
SEGMENTO
DE DS
DATOS 3000
30000H
1FFFFH
SEGMENTO
DE CS
CODIGO 1000
10000H
Cada registro de segmento tiene una función especial y normalmente es asociada con uno
o mas de los registros de índice o punteros. Para generar una localidad de memoria, el
contenido del registro de segmento contiene la parte de la dirección del segmento y se
incrementa un registro índice o puntero, el cual contiene el desplazamiento (offset). La
figura 5 muestra una dirección de memoria generada dentro de un segmento por la
combinación del contenido del registro de segmento y el desplazamiento almacenado en
un registro índice o puntero y así generar la dirección efectiva. La dirección efectiva es la
suma de la dirección del segmento y el desplazamiento. En el ejemplo de la figura 5, el
registro se segmento (DS) contiene 1000H, así que el segmento inicia en la localidad de
memoria 10000H y el desplazamiento (0010H) que esta contenido en el registro base
(BX), forman la dirección efectiva 10010H, o 1000H × 10H + 0010H.
U.A.B.C. Pag. 32
Sistemas Computarizados
10010
1000F
1000E
1000D
1000C
1000B
1000A Desplazamiento
10009
10008 BX
10007 0010
10006
10005
10004
10003
10002
10001 DS
10000 1000
Figura 5. Mapa de memoria que muestra como la dirección 10010H es direccionada cuando DS=1000H y
BX contiene un desplazamiento de 0010H.
U.A.B.C. Pag. 33
Sistemas Computarizados
Registro de Banderas
U.A.B.C. Pag. 34