Lenguajes de Bajo Nivel. REGISTROS DE PROPÓSITO GENERAL
Francisco Granados MinorApuntes10 de Febrero de 2016
12.818 Palabras (52 Páginas)358 Visitas
[pic 3][pic 4][pic 5][pic 6][pic 7]
[pic 8][pic 9][pic 10]
ÍNDICE
REGISTROS DE PROPÓSITO GENERAL
REGISTROS DE SEGMENTO
REGISTRO DE BANDERAS
ARQUITECTURA INTERNA DEL MICROPOCESADOR
MODELO DE PROGRAMACIÓN
LA PILA (STACK)
LA PILA
COMO GUARDAR UN PROGRAMA Y CARGAR EN .COM
COMO CARGAR
ESTRUCTURA DE UN PROGRAMA ENSAMBLADOR
(USANDO EL PROGRAMA DEBUG)
FORMATO GENERAL DE UN PROGRAMA CON DIRECCTIVAS NO SIMPLIFICADAS
SIGNIFICADO DE LAS DIRECTIVAS SIMPLIFICADAS
COMPONENTES PRINCIPALES DE UNA COMPUTADORA
COMPONENTES PRINCIPALES DE LA COMPUTADORA
LOS CIRCUITOS CONCISTEN DE 3 GRANDES SECCIONES
Ejecución de instrucciones
BUSES DEL MICRO PROCESADOR
PROGRAMACION DEL MICRIPROCESADOR
MICRO-COMPUTADOR
MEMORIA DEL MICROPROCESADOR
MEMORIA EN LA COMPUTADRA PERSONAL
MODOS DE DIRECCIONAMIETNO
1.- Direccionamiento por registro:
2.- Direccionamiento inmediato:
3.-Direccionamiento directo.
3.-Directo de datos.
Directo
Desplazamiento
4.- Direccionamiento indirecto por registro:
5.- Direccionamiento base-más-índice
6.- Direccionamiento relativo a registro
7.- Direccionamiento relativo a la base + índice
CAMBIO DE MINUSCULAS A MAYUSCULAS
XLAT
ADICION EN BCD
DESPLAZAMIENTO Y ROTACION
DESPLAZAMIENTO
ROTACION
DATOS BCD (DECIMAL CODIFICADO EN BINARIO)
INSTRUCCIONES ARITMETICAS Y LOGICAS
SUMA
RESTA
MULTIPLICACION
Multiplicación de 8 bits
Multiplicación de 16 bits.
División
División de 8 bits
División con signo
División de 16 bits
El residuo
INSTRUCCIONES LOGICAS BINARIAS
Compuerta AND
Compuerta OR
XOR
ARITMETICA BCD Y ASCII
DAA
DAS
ARITMETICA ASCII
AAA
AAD
AAM
AAS
LAS MACROS EN EL LENGUAJE ENSAMBLADOR
USO DE PARAMETROS EN MACROS
TRANSFERENCIA DE CADENA DE DATOS
REGISTROS DE PROPÓSITO GENERAL[pic 11]
Cada registro de uso general se puede direccionar como un registro de 16 bits (AX, BX, CX, DX) o como uno de 8 bits (AL, AH, BL, BH, CL, CH, DL, DH). Estos registros contienen diferentes tamaños de datos (bites o palabras) y son usadas para cualquier propósito según lo indique el programa.
Las funciones primarias de los registros de propósito general incluyen:
AX (ACUMULADOR). - Se utiliza para operaciones de entrada y salida, operaciones aritméticas o lógicas. A menudo se conserva el resultado en forma temporal después de una operación.
BX (BASE). - A menudo conserva la dirección base (Desplazamiento) de los datos que hay en la memoria o la dirección base de una tabla de datos referenciados por la instrucción para convertir (XLAT).
CX (CONTADOR). - Se utiliza en operaciones de interacción, como un contador que automáticamente se incrementa o decrementa de acuerdo con el tipo de instrucción.
DX (DATOS). - Algunas operaciones de entrada y salida requieren se usó. También se usa como fuente para el acceso de datos.
SP (APUNTADOR DE PILA). - Se emplea para direccionar datos en una pila de memoria LIFO (ultimo en entrar primero en salir) esto ocurre cuando se ejecutan las instrucciones PUSH y POP, cuando se llama (CALL) o se regresa (RET) de una sub-rutina o de un programa principal.
BP (APUNTADOR DE BASE). - Se usa para manipular la pila sin afectar el registro de segmento SS
DI (INDICE DESTINO). - Se usan ciertos nodos de direccionamiento indirecto. También puede guardar un valor de direccionamiento indirecto. También se usa para manejar bloques de cadena en memoria.
SI (INDICE FUENTE). - Se usa igual que el DI, pero en este caso es la fuente y el DI es el destino.
IP (APUNTADOR DE INSTRUCCIONES). - Se utiliza para direccionar a la siguiente instrucción que va a ejecutar el MP (Micro Procesador)
REGISTROS DE SEGMENTO
Estos registros direccionados en la memoria junto con otros registros en el Micro Procesador.
CS (SEGMENTO DE CODIGO) Es una sección de la memoria que tiene los programas y procesamientos utilizados por los programas. El registro de segmento de código define la dirección inicial de la sección de memoria de 64 KB de que consta el CS.
DS (SEGMENTO DE DATOS). - Es una sección de memoria que contiene la mayor parte de datos utilizados en un programa. Se les accesa en el DS y desplazamiento a un contenido de otros registros que tienen la dirección de desplazamiento.
SS (SEGMENTO DE PILA). - Define la superficie de la memoria utilizada por la pila. - La dirección del punto inicial de entrada a la pila, se determina por el registro del apuntador de la pila. El registro DP también direcciona los datos que hay dentro del segmento de pila.
ES (SEGMENTO EXTRA). - Lo utilizan algunas instrucciones para cadena.
REGISTRO DE BANDERAS
Es un registro que guarda información sobre el estado del MP después de la ejecución de ciertas instrucciones específicas, generalmente aritméticas. A continuación, se describe el significado de cada byte del registro de banderas.
TODAS LAS BANDERAS APAGADAS
NV UP DI NZ NA PO NC
TODAS LAS BANDERAS PRENDIDAS
OV DN EI NG ZR AC PE CY
Significado de Bytes:
- OVERFLOW NV = NO HAY DESBORDAMIENTO
OV= SI LO HAY
- DIRECCION UP = HACIA ADELANTE
DN= HACIA ATRÁS
- INTERRUPTS DI = DESCATIVADAS
EI = ACTIVADAS
- SIGN PL = POSITIVO
NG = NEGATIVO
- ZERO NZ = NO ES CERO
ZR = SI LO ES
- AUXILIARY NA = NO HAY ACARREO AUXLIRIAR
AC = HAY ACARRERO AUXILIAR
- PARTYS PO = PARIDAD NON
PE = PARIDAD PAR
- CARRY NC = NO HAY ACREO
CY = SI LO HAY
ARQUITECTURA INTERNA DEL MICROPOCESADOR
Antes de escribir un programa o analizar cualquier instrucción, es necesario conocer la configuración interna del MP.
...