Microprocesador ejecuta una instruccion

Objetivo

Entender como el microprocesador ejecuta una instrucción.

Teoría

El 80486 contiene 8 registros de 32 bits para los propósitos generales:
EAX El registro AX, el acumulador principal, es utilizado para operaciones que implican entrada/salida y la mayor parte de la aritmética. Por ejemplo, las instrucciones para multiplicar, dividir y traducir suponen el uso del AX. También,algunas operaciones generan código más eficientes si se refiere al AX en lugar de los otros registros.
EBX El BX es conocido como el registro base ya que es el único registro de propósitos generales que pueden ser unos índices para direccionamiento indexado. También es común emplear al BX para cálculos.
ECX El CX es conocido como el registro contador. Puede contener un valor para controlar el númerode veces que un ciclo se repite o un valor para corrimiento de bits, hacia la derecha o hacia la izquierda. El CX también es usado para muchos cálculos.
EDX El DX es conocido como el registro de datos. Algunas operaciones de entrada/salida requieren su uso, y las operaciones de multiplicación y división con cifras grandes suponen al DX y al AX trabajando juntos. Puede usar los registros depropósitos para suma y resta de cifras de 8, 16, 32 bits.
EBP El registro BP de 16 bits facilita la referencia de parámetros, los cuales son datos y direcciones transmitidos vía lapida.
EDI El registro índice destino también es requerido por algunas operaciones con cadenas de caracteres. En este contexto, el Di está asociado con el registro ES. Los procesadores 80386 y posteriores permiten el uso de unregistro ampliado a 32 bits, el EDI.
ESI El registro índice de 16 bits es requerido por algunas operaciones con cadenas (de caracteres). En este contexto, el SI está asociado con el registro DS. Los procesadores 80386 y posteriores permiten el uso de un registro ampliado a 32 bits, el ESI.
ESP El apuntador de pila IP de 16 bits esta asociado con el registro SS y proporciona un valor dedesplazamiento que se refiere a la palabra actual que esta siendo procesada en la pila.
El ejemplo siguiente el registro SS contiene la dirección de segmento 27B3[0]H y el SP el desplazamiento 312H Para encontrar la palabra actual que esta siendo procesada en la pila el microprocesador combina las direcciones en el SS y el PP:
Dirección de segmento en el registro SS: 27B30H
Desplazamiento en elregistro SP: + 312H
Dirección en la Pila: 27E42H.

Estos registros se pueden usar como los registros para la información de 8, 16 o 32 bits o para direccionar una localidad en el sistema de la memoria.
Como Intel garantizó la compatibilidad hacia atrás con el código ensamblador antiguo, las mitades de estos registros podían seguir direccionándose como AX, BX, CX, DX, y sus cuartas partes como AH; AL; BH; BL; CH; CL; DH y DL.

Además de los registros de propósito general, el 80486 también contiene los registros de segmentos:
CSEl DOS almacena la dirección inicial del segmento de código de un programa en el registro CS. Esta dirección de segmento, mas un valor de desplazamiento en el registro de apuntado de instrucción (IP), indica la dirección de una instrucción que es buscada para síejecución. Para propósito de programación normal, no e necesita referenciar el registro CS.
DSLa dirección inicial de un segmento de datosde programa es almacenada en el registro DS. En términos sencillos, esta dirección, mas un valor de desplazamiento en una instrucción, genera una referencia a la localidad de un bytes especifico en el segmento de datos.
ESAlgunas operaciones con cadenas decaracteres (datos de caracteres) utilizan el registro esta 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 dirección apropiada.
SS El registro SS permite la colocación en memoria de una pila, para almacenamiento temporal de direcciones y…