· AX (acumulador)
· BX (registro base)
· CX (registro contador)
· DX (registro de datos)
· DS (registro del segmento de datos)
· ES (registro del segmento extra)
· SS (registro del segmento de pila)
· CS (registro del segmento de código)
· BP (registro de apuntadores base)
· SI (registro índice fuente)
· DI (registro índice destino)
· SP (registro del apuntador de pila)
· IP (registro del apuntador de siguiente instrucción)
· F (registro de banderas)
El registro AX se usa para almacenar resultados, lectura o escritura desde o
hacia los puertos. El BX sirve como apuntador base o índice. El CX se utiliza en operaciones
de iteración, como un contador que automáticamente se incrementa o decrementa
de acuerdo con el tipo de instrucción usada. El DX se usa como puente para el
acceso 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. La única excepción es cuando tenemos programas del tipo
*.com, ya que en éstos sólo puede existir un segmento. El registro ES tiene el propósito
general de permitir operaciones sobre cadenas, pero también puede ser una extensión
del DS.
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 (PC, por sus siglas en inglés) En términos de operación interna, la CPU usa este
segmento para almacenar las direcciones de retorno de las llamadas a rutinas. El
registro de segmentos más importante es el CS o segmento de código. Es aquí donde
se encuentra el código ejecutable de cada programa, el cual está directamente ligado a
los diferentes modelos de memoria.
El registro BP (base pointer) se usa para manipular la pila sin afectar al registro
de segmentos SS. Es útil cuando se usa interfaz entre lenguajes de alto nivel y el ensamblador. Puesto que dicha interfaz se basa en el concepto de la pila BP, nos permite
acceder parámetros pasados sin alterar el registro de segmento SS. Los registros SI y
DI son útiles para manejar bloques de cadenas en memoria, siendo el primero el índice
fuente y el segundo el índice destino. En otras palabras, SI representa la dirección
donde se encuentra la cadena y DI la dirección donde será copiada.
El registro SP apunta a un área específica de memoria que sirve para almacenar
datos bajo la estructura LIFO (último en entrar, primero en salir), conocida como pila
(stack) El registro IP (instruction pointer) apunta a la siguiente instrucción que será
ejecutada en memoria.
Un pequeño vídeo que explica de mejor forma el tema:
https://www.youtube.com/watch?v=eARl-aZ06FI
Un pequeño vídeo que explica de mejor forma el tema:
https://www.youtube.com/watch?v=eARl-aZ06FI
No hay comentarios.:
Publicar un comentario