Sie sind auf Seite 1von 4

Estructura del procesador 8088 y sus Registros.

El 8088 tienen internamente dos componentes, la Unidad de Interfaz del Bus y la Unidad de ejecucin (Bus Interface Unit (BIU) y Execution Unit (EU)).

La Unidad de Ejecucin procesa las instrucciones del CPU. Est conformada por los registros generales, los registros ndice y apuntadores, los flags, la unidad aritmtico lgica, y la lgica de control que maneja todo el proceso para ejecutar las instrucciones. La Unidad de Interfaz del Bus maneja la lectura y escritura desde y hacia la memoria y los puertos de entrada/salida. Est conformada por los registros de segmento, una cola de 4 bytes para instrucciones en el 8088 y de 6 en el 8086, y lgica para controlar los buses externos del microprocesador.

En la figura inferior, la Unidad de Ejecucin se encuentra en la parte de abajo y la Unidad de Interfaz del Bus est en la parte superior. Las dos estn interconectadas mediante un bus interno.

Diagrama de bloque de los microprocesadores Intel 8086 y 8088.


1 Bloque de registros de propsito general 2 Bloque de registros de segmento y registro IP 3 Sumador de direcciones 4 Bus de direcciones interno 5 Cola de instrucciones (4 bytes para el 8088 y 6 bytes para el 8086) 6 Unidad de control (muy simplificada) 7 Interfaz del bus 8 Bus de datos interno 9 Unidad aritmtico-lgica (ALU) 10, 11, 12 Bus de direcciones, datos y control externos F Registro de banderas

Registros internos del procesador.


Los registros del procesador se emplean para controlar instrucciones en ejecucin, manejar direccionamiento de memoria y proporcionar capacidad aritmtica. Los registros son direccionables por medio de un nombre.
Registros de propsito general AH AL BH CH DH Registros ndices SI DI BP SP Registro de Bandera - - - - OD I T SZ - A - P - C Registros de Segmentos CS DS ES Source Index (ndice origen) Destination Index (ndice Destino) Base Pointer (Puntero Base) Stack Pointer (Puntero de Pila) Flags (Banderas) Code Segment (Segmento de Cdigo) Data Segment (Segmento de Datos) ExtraSegment (Segmento Extra) BL CL DL

AX (Acumulador) BX (Base) CX (Contador) DX (Datos)

SS Stack Segment (Segmento de Pila) Registro apuntador de instrucciones IP Instruction Pointer Modelo de los registros

Registros de segmento. Un registro de segmento tiene 16 bits de longitud y facilita un rea de memoria para direccionamiento conocida como el segmento actual. Registro CS (Segmento de Cdigo). El DOS almacena la direccin inicial del segmento de cdigo de un programa en el registro CS. Esta direccin de segmento, mas un valor de desplazamiento en el registro apuntador de instruccin (IP), indica la direccin de una instruccin que es buscada para su ejecucin. Registro DS (Segmento de Datos). La direccin inicial de un segmento de datos de programa es almacenada en el registro DS. En trminos sencillos, esta direccin, mas un valor de desplazamiento en una instruccin, genera una referencia a la localidad de un byte especifico en el segmento de datos.

Registro SS (Segmento de Pila). El registro SS permite la colocacin en memoria de una pila, para almacenamiento temporal de direcciones y datos. El DOS almacena la direccin de inicio del segmento de pila de un programa en le registro SS. Esta direccin de segmento, mas un valor de desplazamiento en el registro del apuntador de pila (SP), indica la palabra actual en la pila que esta siendo direccionada. Registros ES (Segmento Extra). Algunas operaciones con cadenas de caracteres (datos de caracteres) utilizan el registro extra de segmento para manejar el direccionamiento de memoria. En este contexto, el registro ES esta asociado con el registro DI (ndice). Un programa que requiere el uso del registro ES puede inicializarlo con una direccin de segmento apropiada.

Registros de propsito general. Son nicos en el sentido de que se puede direccionarlos como una palabra o como una parte de un byte. El ltimo byte de la izquierda es la parte "alta", y el ltimo byte de la derecha es la parte "baja". Por ejemplo, el registro CX consta de una parte CH (alta) y una parte Cl (baja), y podemos referirnos a cualquier parte por su nombre. Registro AX (Acumulador). Es utilizado para operaciones que implican entrada/salida y la mayor parte de la aritmtica. Tambin, algunas operaciones generan cdigo ms eficiente si se refieren al AX en lugar de a los otros registros. Registro BX (Base). Es el nico registro de propsito general que puede ser ndice para direccionamiento indexado. Tambin es comn emplear el BX para clculos. Registro CX (Contador). Puede contener un valor para controlar la cantidad de veces que un ciclo se repite o un valor de corrimiento de bits, hacia la derecha o hacia la izquierda. El CX tambin es utilizado para muchos clculos. Registro DX (datos). Algunas operaciones de entrada/salida requieren uso, y las operaciones de multiplicacin y divisin con cifras grandes suponen al DX y al AX trabajando juntos.

Registros apuntadores. Los registros SP (apuntador de la pila) Y BP (apuntador de base) estn asociados con el registro SS y permiten al sistema acceder a datos en el segmento de la pila. Registro SP. El apuntador de la pila de 16 bits esta asociado con el registro SS y proporciona un valor de desplazamiento que se refiere a la palabra actual que esta siendo procesada en la pila. Registro BP. El BP de 16 bits facilita la referencia de parmetros, los cuales son datos y direcciones transmitidos va pila. Los procesadores 80386 y posteriores tienen un BP ampliado de 32 bits llamado el registro EBP.

Registros ndice. Los registros SI y DI estn disponibles para direccionamiento indexado y para sumas y restas. Registro SI. El registro ndice fuente de 16 bits es requerido por algunas operaciones con cadenas (de caracteres). En este contexto, el SI esta asociado con el registro DS. Registro DI. El registro ndice destino tambin es requerido por algunas operaciones con cadenas de caracteres. En este contexto, el DI esta asociado con el registro ES. Los procesadores 80386 y posteriores permiten el uso de un registro ampliado de 32 bits, el EDI.

Registro de banderas.

- - - - OF DF IF TF SF ZF - AF - PF - CF

OF (Overflow, desbordamiento). Indica desbordamiento de un bit de orden alto (mas a la izquierda) despus de una operacin aritmtica. DF (direccin). Designa la direccin hacia la izquierda o hacia la derecha para mover o comparar cadenas de caracteres. IF (interrupcin). Indica que una interrupcin externa, como la entrada desde el teclado, sea procesada o ignorada. TF (trampa). Permite la operacin del procesador en modo de un paso. Los programas depuradores, como el DEBUG, activan esta bandera de manera que usted pueda avanzar en la ejecucin de una sola instruccin a un tiempo, para examinar el efecto de esa instruccin sobre los registros de memoria. SF (signo). Contiene el signo resultante de una operacin aritmtica (0 = positivo y 1 = negativo). ZF (cero). Indica el resultado de una operacin aritmtica o de comparacin (0 = resultado diferente de cero y 1 = resultado igual a cero). AF (acarreo auxiliar). Contiene un acarreo externo del bit 3 en un dato de 8 bits para aritmtica especializada. PF (paridad). Indica paridad par o impar de una operacin en datos de 8 bits de bajo orden (mas a la derecha). CF (acarreo). Contiene el acarreo de orden mas alto (mas a la izquierda) despus de una operacin aritmtica; tambin lleva el contenido del ultimo bit en una operacin de corrimiento o de rotacin.

Das könnte Ihnen auch gefallen