Está en la página 1de 21

Registros Básicos

del CPU
Registros de uso general
Registros apuntadores
Registros Índices
Registros de Segmentos
Apuntador Índice
Registro de Banderas

Ing. Esp. Milton Hernandez


Los Registros de la CPU
 Los procesadores desde
la gama 8086 tienen
mínimamente 14
registros de 16 bits, que
sirven para Llevar un
control de todo lo que
sucede dentro del PC.
 Se dividen en diversas
categorías según su
actividad o propósito.

Ing. Esp. Milton Hernandez


Registros de uso general

 AX, BX, CX, y DX.


 Estos registros son duales, es decir,
pueden manipularse como si fueran de 8 o
de 16 bits.
 En la modalidad de 8 bits se les conoce
como registros Rp. Donde R es la letra que
corresponde al registro (A, B, C o D) y p es
la parte alta (H) o baja (L) del registro.
Ing. Esp. Milton Hernandez
Registros de uso general
 AX se le conoce como registro acumulador,
se usa para toda operación de entrada/salida y
para algunas operaciones de cadenas.
 BX se le conoce como registro base, se usa
para calcular direcciones que accesan la
memoria.
 CX es el registro contador, es usado para
llevar la cuenta en operaciones repetitivas.
 DX es el registro de datos, se usa para
almacenar las direcciones de los puertos. Se
puede usar en combinación con AX.
Ing. Esp. Milton Hernandez
Registros apuntadores

 Se usan para apuntar a alguna dirección


de memoria.
 BP es el Apuntador Base, usado para
manipular la información que se
encuentra en la pila.
 SP es el Apuntador de Pila, se usa para
crear en memoria una estructura llamada
pila. Funciona en conjunto con el SS.
Ing. Esp. Milton Hernandez
Registros de Índices

 Se usan en operaciones con cadenas.


 SI conocido como índice Fuente, indica
la dirección de inicio de los datos a
copiar en la dirección DI.
 DI es el índice Destino.
 También se usan en el calculo de
direcciones o en el paso de parámetros.

Ing. Esp. Milton Hernandez


Registros de Segmentos

 CS es el segmento de código, esta


asociado al código del programa.
Funciona con el registro IP.
 La combinación CS:IP da como resultado
la siguiente instrucción a ser ejecutada
por el procesador.
 DS es el registro segmento de dato, allí
se guardan los datos del programa.
Ing. Esp. Milton Hernandez
Registros de Segmentos

 ES es el registro de segmento extra, se


utiliza para ampliar el registro de
segmento de datos.
 SS es el registro segmento de pila,
controla el área donde se crea la pila.
 Los registros de segmentos se usan para
generar la dirección que se pondrá en el
bus de direcciones de la CPU.
Ing. Esp. Milton Hernandez
Registros de Segmentos

Ing. Esp. Milton Hernandez


Registro Apuntador de
Instrucciones
 El registro IP se usa
en combinación con
el registro CS para
indicar el área de
memoria donde se
encuentra la
siguiente instrucción
por ejecutar.

Ing. Esp. Milton Hernandez


Registro de Banderas

 Reporta el estado de una operación


aritmética o lógica.
 CF Bandera de Acarreo.
 PF Bandera de Paridad.
 AF Bandera de Acarreo Auxiliar.
 ZF Bandera de Cero.
 SF Bandera de Signo.
 OF Bandera de Desbordamiento.
Ing. Esp. Milton Hernandez
Registro de Banderas

 DF Bandera de Dirección.
 IF Bandera de Interrupción.
 TF Bandera de Captura.
 Las tres anteriores se usan como
banderas de control.

Ing. Esp. Milton Hernandez


Estados del registro
Banderas
 Overflow  Zero
NV = no hay desbordamiento; NZ = no es cero;
OV = sí lo hay ZR = sí lo es
 Direction  Auxiliary Carry
UP = hacia adelante; NA = no hay acarreo auxiliar;
DN = hacia atras; AC = hay acarreo auxiliar
 Interrupts  Parity
DI = desactivadas; PO = paridad non;
EI = activadas PE = paridad par;
 Sign  Carry
PL = positivo; NC = no hay acarreo;
NG = negativo CY = Sí lo hay

Ing. Esp. Milton Hernandez


Ejemplo con Debug

 C:\>Debug [enter]  a [enter]


 r [enter]  Mov ah, 8 [enter]
 r bx [enter]  add ah, 3 [enter]
 Bx 0000  sub ah, 4 [enter]
 :CF; Nuevo valor  Int 20 [enter]
para BX  [enter]
 r [enter]  g108 [enter]
 g [enter]
Ing. Esp. Milton Hernandez
Modos de
Direccionamiento
 El modo de direccionamiento especifica la forma
de interpretar la información contenida en cada
campo de operando para localizar, con base a
esta información, el operando.
 Da versatilidad de programación al usuario
proporcionando facilidades tales como índices,
direccionamientos indirectos, etc., esta versatilidad
nos servirá para manejar estructuras de datos
complejas como vectores, matrices, etc.
 Reducir el número de bits del campo de operando.

Ing. Esp. Milton Hernandez


Modos de
Direccionamiento
 Direccionamiento implícito
En este modo, llamado también inherente, el operando
se especifica en la misma definición de la instrucción.
El modo implícito se usa para hacer referencia a
operandos de dos tipos:
 Registros: En el caso de que el código de operación se
refiera en particular a un registro.
 Operandos en la pila: En el caso de que la operación se
realice siempre sobre el dato situado en la cima de pila.
 Ejemplo: Mov Ax, Bx
 Push Ax
 Pop Bx

Ing. Esp. Milton Hernandez


Modos de
Direccionamiento
 Direccionamiento inmediato (o literal) En
este modo es el operando el que figura en la
instrucción no su dirección. En otras palabras
el campo de operando contiene él mismo, sin
transformación alguna, la información sobre la
que hay que operar. Este modo es útil para
inicializar registros o palabras de memoria con
un valor constante.
 Ejemplo: Mov Ax, 5
Ing. Esp. Milton Hernandez
Modos de
Direccionamiento
 Direccionamiento directo (o absoluto)
Este es el modo de direccionamiento más
sencillo. El campo de dirección no necesita
transformación alguna para dar la dirección
efectiva, es decir la función que transforma el
campo de operando en la dirección efectiva es
la identidad. Esto significa que el campo de
operando es ya la dirección efectiva.
Ejemplo: Mov ax, Valor; Valor es una variable
Mov Ax, [200H]
Ing. Esp. Milton Hernandez
Modos de
Direccionamiento
 Direccionamiento indirecto
En este modo el campo de operando de la instrucción
indica la localización de la dirección efectiva del
operando. El modo de direccionamiento indirecto
puede adquirir diferentes formas según cuál sea el
lugar donde se encuentre la dirección del operando.
En general, todos los modos de direccionamiento
tienen su versión indirecta que añade un eslabón más
a la cadena del direccionamiento. Por ejemplo existe el
direccionamiento indirecto por registro, en el que el
registro especificado contiene la dirección del
operando, no el operando mismo.
Ejemplo: Mov Ax, [SI]

Ing. Esp. Milton Hernandez


Modos de
Direccionamientos

Ing. Esp. Milton Hernandez


Taller

 ¿Cuál ha sido la evolución de los


distintos registros del CPU, de ejemplos
de cada uno de ellos indicando su
utilidad?

 ¿Qué otros tipos de direccionamiento


existen, de ejemplos de cada uno
indicando la utilidad?
Ing. Esp. Milton Hernandez

También podría gustarte