lunes, 8 de septiembre de 2014

REGISTRO DEL PROCESADOR

 REGISTRO DEL PROCESADOR


Son sitios de almacenamiento rapido y temporal, se emplea para controlar instrucciones en ejecución, manejar direccionamiento de memoria y proporcionar capacidad aritmética.
Son espacios físicos del microprocesador con capacidad de 4 bit hasta 64 bit dependiente del microprocesador que se emplee. 

 

 

  •   Registro de segmento.

  • Registro de proposito general.

  • Registro de apuntadores.

  • Registro de bandera.

  • Registro de puntero de instruccion.

  • Registro pila.

 Registros de segmento.

Un registro de segmento se utiliza para alinear en un limite de parrafo o dicho de otra forma codifica la dirección de inicio de cada segmento y su dirección en un registro de segmento supone cuatro bits 0 a su derecha.

Un registro de segmento tiene 16 bits de longitud y facilita un área de memoria para direccionamientos conocidos como el segmento actual. Los registros de segmento son:

  • Registro CS

  • Registro DS

  • Registro SS

  • Registro ES

  • Registro FS y GS

     

Registro CS


El 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 programacion normal, no e necesita referenciar el registro CS.

Registro DS


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 bytes especifico en el segmento de datos.

Registro SS


El registro SS permite la colocación en memoria de una pila, para almacenamiento temporal de direcciones y datos. El DOS almacena la dirección de inicio del segmento de pila de un programa en el registro SS. Esta dirección de segmento, más un valor de desplazamiento en el registro del apuntador de la pila (SP), indica la palabra actual en la pila que está siendo direccionada. Para propósitos de programación normal, no se necesita diferenciar el registro SS.

Registro ES


Algunas operaciones con cadenas de caracteres (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.

Registros FS y GS

Son registros extra de segmento en los procesadores 80386y posteriores a estos procesadores.

 

Registro de propósitos generales.

Los registros de propósitos generales AX, BX, CX y DX son los caballos de batalla o las herramientas del sistema. Son los ú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" por ejemplo, el registro CX consta de una parte CH (alta) y una parte CL (baja), y usted puede referirse a cualquier parte por si nombre. Ñas instrucciones siguientes mueven ceros a los registros CX, CH y CL respectivamente.
Mov CX, 00
Mov CH, 00
Mov CL, 00
Los procesadores 80386 y posteriores permiten el uso de todos registros de propósito general, mas versiones de 32 bits; EAX, EBX y EDCX.

Registros AX.


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.

 

Registro BX.


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.

 Registro CX.


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

Registro DX.


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 de propósitos para suma y resta de cifras de 8, 16, 32 bits.

Registros apuntadores.


Los registros apuntadores están asociados con el registro SS y permiten al procesador accesar datos en el segmento de pila los registros apuntadores son dos:

  • El registro SP

  • El registro BP

Registro SP.


El apuntador de pila IP 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.
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 el registro SP: + 312H
 

Dirección en la Pila: 27E42H.

Registro BP.


El registro BP de 16 bits facilita la referencia de parámetros, los cuales son datos y direcciones transmitidos vía lapida.

Registros indice.

 Los registros SI y DI estan disponibles para direccionamiento indexado para sumas y restas.

Registro SI.

El registro indice fuente de 16 bits, es requerido por algunas operaciones con cadenas de caracteres. En este contexto, el SI esta asociado con el registro DS. Los procesadores 80386 y posteriores permiten el uso de un registro ampliado de 32 bits, el ESI.

 Registro DI.

El registro indice destino tambien 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 bandera.

De los 16 bits del registro de banderas, nueve son comunes a toda la familia de procesadores 8086, y 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 cuyas instrucciones pueden realizar pruebas para determinar la acción subsecuente. En resumen, los bits de las banderas comunes son como sigue:

OF (Overflow, desbordamiento). Indica desbordamiento de un bit de orden alto (mas a la izquierda) después de una operación aritmética.

DF (dirección). Designa la dirección hacia la izquierda o hacia la derecha para mover o comparar cadenas de caracteres.

IF (interrupción). Indica que una interrupción externa, como la entrada desde el teclado, sea procesada o ignorada.

TF (trampa). Permite la operación del procesador en modo de un paso. Los programas depuradores, como el DEBUG, activan esta bandera de manera que usted pueda avanzar en la ejecución de una sola instrucción a un tiempo, para examinar el efecto de esa instrucción sobre los registros de memoria.

SF (signo). Contiene el signo resultante de una operación aritmética (0 = positivo y 1 = negativo).

ZF (cero). Indica el resultado de una operación aritmética o de comparación (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 aritmética especializada.

PF (paridad). Indica paridad par o impar de una operación 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) después de una operación aritmética; también lleva el contenido del ultimo bit en una operación de corrimiento o de rotación.

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

Las banderas mas importantes para la programación en ensamblador son O, S, Z y C, para operaciones de comparación y aritméticas, y D para operaciones de cadenas de caracteres. Los procesadores 80286 y posteriores tienen algunas banderas usadas para propósitos internos, en especial las que afectan al modo protegido. Los procesadores 80286 y posteriores tienen un registro extendido de banderas conocido como Eflags.

Segmento

Un área especial en un programa que inicia en el limite de un párrafo, esto es en una localidad que regularmente, es individual en 16 o 10 hexadecimal.

 

  • Segmento de código

  • Segmento de datos

  • Segmento de pila.


Segmento de código.

El segmento de código (CS) contiene las instrucciones de maquina que son ejecutadas por lo común la primera instrucción ejecutable esta en el inicio del segmento, y el sistema operativo enlaza a esa localidad para iniciar la ejecución del programa. Como su nombre indica, el registro del CS direcciona el segmento de código. Si su área de código requiere mas de 64K, su programa puede necesitar definir mas de un segmento de código.

 

Segmento de datos.

El segmento de datos (DS) contiene datos, constantes y áreas de trabajo definidos por el programa. El registro DS direcciona el segmento de datos. Si su área de datos requiere mas de 64K, su programa puede necesitar definir mas de un segmento de datos.

 

 

Segmento de pila.

En términos sencillos, la pila contiene los datos y direcciones que usted necesita guardar temporalmente o para uso de sus "llamadas" subrutinas. El registro de segmento de la pila (SS) direcciona el segmento de la pila. 

 

BUSES 

 El bus es la vía de comunicación para los datos y señales de control en la estructura de un computador, entre la cpu y los diferentes órganos que se le deben poner si se tratan de las pistas o cintas de cobre impresas en la placa principal se llama bus del sistema. 


El bus esta formado básicamente por tres: bus de datos ,bus de direcciones y bus de control.

 

Bus de datos.

Se utiliza para transportar la informacion. Por madio de este bus, el microprocesador puede enviar o recibir datos de la memoria y tambien enviar datos del mundo exterior a travez de las unidades de entrada y salida.

El numero de lineas del bus de datos determinara el ancho de la palabra de trabajo del CPU.

  • Estan compuesta por 8, 16, 32, 64 lineas.  

 El bus de datos propiamente dicho, transporta información entre dispositivos de hardware como teclado, mouse, impresora, monitor y también de almacenamiento como el disco duro o memorias móviles.

Bus de direccion.

 Es totalmente independiente del bus de datos, donde se entablece la direccion de memoria de datos en transito consiste en el conjuntode lineas electricas necesarias para establecer una direccion.

  • Es el encargado de direccionar los datos a su origen o destino.

  • Es indireccional.

  • La cantidad de ineasdetermina la memoria maxima a utilizar.

Bus de control.

transporta señales de estado de las operaciones efectuadas por el CPU. El metodo utilizado por el ordenador para sincronizar las distintas operaciones es por medio de un reloj interno que posee el ordenador y facilita la sincronizacion y evita la colisiones de operaciones. Estas operaciones se transmiten en un modo bidireccional y unidireccional.

Es el encargado de conducir las señales IRQ de solicitud de interrupción que hacen los dispositivos al microprocesador.

Bus de espancion.

Se le llama al conjunto de líneas eléctricas y circuitos electrónicos de control encargados de conectar el bus del sistema de la tarjeta madre con los buses de dispositivos accesorios, tal como una tarjeta controladora de disco, una tarjeta de video  y MODEM.

 

No hay comentarios.:

Publicar un comentario