miércoles, 28 de agosto de 2013

Actividad #4 : Investigar sobre los registros que contiene un cpu y sus funciones

Registros

Los registros del procesador se emplean para controlar instrucciones en ejecución  manejar direccionamiento de memoria y proporcionar capacidad aritmética  Los registros son direccionables por medio de un nombre.







Registros de segmento

Tienen 16 bits de longitud y facilita un área de memoria para direccionamiento conocida como el segmento actual.

Registro CS
CS(Registro del segmento de código)
Indica la posicion de comienzo del segmento de código, o sea las instrucciones del programa.

Registro DS

DS(Registro de segmento de datos):
Indica la posición donde empieza el segmento de datos, es decir , el area de memoria donde estan almacenados los datos del programa.

La dirección inicial de un segmento de datos de 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 byte especifico en el segmento de datos.

El DS es un registro de segmento cuya función es actuar como policía donde se encuentran los datos. Cualquier dato, ya sea una variable inicializada o no, debe estar dentro de este segmento.


Registro ES

ES(Registro del segmento extra)
Indica la posición de memoria donde comienza el segmento extra, un segmento de datos adicional que también se utiliza para transferencia de datos entre segmentos.



Registro SS

SS(Registro del segmento de la pila)
Indica la posición de memoria donde empieza la pila.

El registro SS permite la colocación en memoria de una pila, para almacenamiento temporal de direcciones y datos.

El SS tiene la tarea exclusiva de manejar la posición de memoria donde se encuentra la pila (stack). Esta es una estructura usada para almacenar datos en forma temporal, tanto de un programa como de las operaciones internas de la computadora personal.

Registros FS y GS

Son registros extras de segmentos en los procesadores 80386 y posteriores.



Registro de apuntador de instrucciones

El registro apuntador de instrucciones (IP) de 16 bits contiene el desplazamiento de dirección de la siguiente instrucción que se ejecuta.El IP esta asociado con el registro CS en el sentido de que el IP indica la instrucción actual dentro del segmento de código que se esta ejecutando actualmente.


Registros apuntadores

Los registros SP(apuntador de la pila) y BP (apuntador base) estan asociados con el registro SS y permiten al sistema accesar datos en el segmento de pila.


Registro SP.

SP (Puntero de pila)
Indica la posición de la cabecera de la pila.

El registro SP apunta a un área especifica de memoria que sirve para almacenar bajo la estructura LIFO(ultimo en entrar, primero en salir), conocida como pila stack.

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.

En 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 se esta siendo procesada en la pila, la computadora combina las direcciones en el SS y el SP:











Registros BP

BP (puntero base)
indica la dirección de comienzo de la pila.

El BP de 16 bits facilita la referencia de parámetros  los cuales son datos y direcciones trasmitidos via la pila. Los procesadores 80386 y posteriores tienen un BP ampliado de 32 bit llamado el registro EBP.

El registro BP se usa para manipular la pila sin afectar al registro de segmentos SS. Es utili cuando se usa interfaz entre lenguajes de alto nivel y el ensamblador.


Registros de propósito general

Los registros de propósito general AX, BX, CX y DX son únicos en el sentido de que se puede direccionarlos como una palabra o como una parte de un byte.El ultimo byte de la izquierda es la parte "alta", y el ultimo byte de la derecha es la parte baja.


Registro AX.

AX (Acumulador)
Principal registro utilizando en las operaciones aritméticas.


El registro AX se usa para almacenar resultados, lectura o escritura desde o hacia los puertos.

El registro AX 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.


Registro BX

BX(base)
Se utiliza para indicar desplazamiento.


El Registro BX sirve como apuntador base o indice.

El registro BX es conocido como el registro base ya que es el unico registro de proposito general que puede ser un indice para direccionamiento indexado. Tambien es comun emplear el BX para cálculos.







Registro CX

CX(contador)
Se utiliza como contador en bucles y en operaciones de tipo repetitivo.


El registro CX es conocido como el registro contador. Puede contener un valor para controlar el numero de 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.

Se utiliza en operaciones de iteracion, como un contador que automáticamente se incrementa o decrementa de acuerdo con el tipo de instrucción usada.





Registros DX

DX (dato)
Se utiliza en operaciones aritméticas.

El registro DX es conocido como el registro de datos. Algunas operaciones de entrada/ salida requieren de su uso, y las operaciones de multiplicación y division con cifras grandes supenen al DX y al AX trabajando juntos.


El registro se usa como puente para el acceso de datos.

Registros Indice

Los registros SI y DI están disponibles para direccionamiento indexado y para sumas y restas.

 
Los registros SI y DI son útiles para manejar bloques de cadenas en memoria, siendo el primero el indice fuente y el segundo indice destino. En otras palabras, SI representa la direccion donde se encuentra la cadena y DI la dirección donde sera copiada.

Registros SI

El registro indice de 16 bits es requerido por algunas operaciones con cadenas (de caracteres). En este contexto, el SI esta asociado con el registro DS.



Registro de banderas

Sirven para indicar el estado actual de la maquina y el resultado del procesamiento. Muchas instrucciones que piden comparaciones y aritmética cambian el estado de las banderas, algunas de cuyas instrucciones pueden realizar pruebas para determinar la acción subsecuente.

Las banderas están en el registro de banderas en las siguientes posiciones:





FUENTES:

Lenguaje Ensamblador Prog Ibm

 Escrito por Peter Abel

Informatica. Temario A. Volumen Ii. Profesores de Educacion Secundaria E-book
 
Microcomputadoras al detalle




No hay comentarios:

Publicar un comentario