Você está na página 1de 14

Arquitectura de computadoras II

El 8086/8088

Universidad Nacional del Este Facultad Politcnica Ingeniera de Sistemas

Microprocesadores 8086-8088

Arquitectura de computadoras II

El 8086/8088

Caractersticas
Microprocesador 8086 Microprocesador 8088

Mismo conjunto de instrucciones

Mismo conjunto de instrucciones


Cola de 4 bytes para instrucciones

Cola de 6 bytes para instrucciones

Internamente son idnticos, exteriormente no, bus de datos de 16 bits

Internamente son idnticos, exteriormente no, bus de datos de 8 bits


Uso de circuitos lgicos ms econmicos

Ms rpido

Arquitectura de computadoras II

El 8086/8088

Diagrama de Bloques Arquitectura interna del 8086 / 8088

Arquitectura de computadoras II

El 8086/8088

Estos microprocesadores tiene 2 procesadores conectados internamente, estos procesadores son: EU Unidad de ejecucin (Execution Unit). BIU Unidad de interfaz con el Bus (Bus Interface Unit).

Arquitectura de computadoras II

El 8086/8088

La Unidad de Ejecucin (EU)


La unidad de ejecucin (EU) se encarga de realizar las operaciones aritmticas y lgicas, adems de proporcionar las direcciones lgicas al BIU --una direccin lgica est formada de dos direcciones, la primera indica el segmento en el cual se est trabajando y la otra indica el offset, o desplazamiento, de este segmento; esto es segment:offset --.

La Unidad de Interfase con el Bus (BIU)


Es la responsable de la comunicacin externa del procesador. Esta unidad de proceso se encarga de traducir las direcciones lgicas a direcciones fsicas de la memoria con ayuda de los registros de segmento DS, SS, ES, CS e IP.

Arquitectura de computadoras II

El 8086/8088

Registros del 8086/8088

Arquitectura de computadoras II

El 8086/8088

Registros de datos o de propsito general


AX, BX, CX, DX: pueden utilizarse bien como registros de 16 bits o como dos registros separados de 8 bits (byte superior e inferior) cambiando la X por H o L segn queramos referirnos a la parte alta o baja respectivamente. AX = Acumulador. Es el registro principal, es utilizado en las instrucciones de multiplicacin y divisin y en algunas instrucciones aritmticas especializadas, as como en ciertas operaciones de carcter especfico como entrada, salida y traduccin. BX = Base. Se usa como registro base para referenciar direcciones de memoria con direccionamiento indirecto, manteniendo la direccin de la base o comienzo de tablas o matrices. CX = Contador. Se utiliza comnmente como contador en bucles y operaciones repetitivas de manejo de cadenas. DX = Datos. Usado en conjuncin con AX en las operaciones de multiplicacin y divisin que involucran o generan datos de 32 bits. En las de entrada y salida se emplea para especificar la direccin del puerto E/S.

Arquitectura de computadoras II

El 8086/8088

Registros de segmento:
Definen reas de 64 Kb dentro del espacio de direcciones de 1 Mb del 8086. Estas reas pueden traslaparse total o parcialmente. No es posible acceder a una posicin de memoria no definida por algn segmento: si es preciso, habr de moverse alguno. CS = Registro de segmento de cdigo (code segment). Contiene la direccin del segmento con las instrucciones del programa. Los programas de ms de 64 Kb requieren cambiar CS peridicamente. DS = Registro de segmento de datos (data segment). Segmento del rea de datos del programa. SS = Registro de segmento de pila (stack segment).

Segmento de pila.
ES = Registro de segmento extra (extra segment). Segmento de ampliacin para zona de datos.

Arquitectura de computadoras II

El 8086-8088

Registros punteros de pila


SP = Puntero de pila (stack pointer). Apunta al inicio de la pila. Utilizado en las instrucciones de manejo de la pila.

BP = Puntero base (base pointer).


Es un puntero de base, que apunta a una zona dentro de la pila dedicada al almacenamiento de datos (variables locales y parmetros de las funciones en los programas compilados).

Puntero de instrucciones
IP = Puntero de instruccin (instruction pointer).
Marca el desplazamiento de la instruccin en curso dentro del segmento de cdigo. Es automticamente modificado con la lectura de una instruccin.

Arquitectura de computadoras II

El 8086/8088

Registros Indices
SI = ndice fuente (source index). Utilizado como registro de ndice en ciertos modos de direccionamiento indirecto, tambin se emplea para guardar un valor de desplazamiento en operaciones de cadenas. DI = ndice destino (destination index). Se usa en determinados modos de direccionamiento indirecto y para almacenar un desplazamiento en operaciones con cadenas.

Arquitectura de computadoras II

El 8086/8088

Registro de estado o de indicadores (flags)


Es un registro de 16 bits de los cuales 9 son utilizados para indicar diversas situaciones durante la ejecucin de un programa.
Bit CF Indicador de: Acarreo

PF
AF ZF SF IF DF OF

Paridad
Acarreo auxiliar Cero Signo Interrupcin Direccin Desbordamiento

Arquitectura de computadoras II

El 8086/8088

Unidad Aritmtica Lgica (ALU)

Un tpico smbolo esquemtico para una ALU: A y B son operandos; R es la salida; F es la entrada de la unidad de control; D es un estado de la salida.

Arquitectura de computadoras II

El 8086/8088

Unidad Aritmtica Lgica (ALU)


Las operaciones que realiza la ALU se pueden agrupar en las siguientes

categoras:
Operaciones aritmticas, tales como suma, resta, multiplicacin y

divisin. Operaciones de lgica binaria, tales como and, or, xor, not ... Operaciones de desplazamientos y rotaciones. Operaciones de transformacin de operandos, tales como

extensin de signo, transformacin a otro formato de numeracin, etc.

Arquitectura de computadoras II

El 8086/8088

Lgica de Control de la va