graficacion

Páginas: 24 (5774 palabras) Publicado: 11 de septiembre de 2013
Ensamblador 8086/88
1.
2.
3.
4.
5.
6.

Introducción
Registros internos
Modos de direccionamiento
Juego de Instrucciones
Etiquetas, cometarios y directivas
Problemas

1. Introducción
El lenguaje ensamblador como cualquier lenguaje de programación es un conjunto de palabras
que le indican al ordenador lo que tiene que hacer. Sin embargo la diferencia fundamental es que
cadainstrucción escrita en lenguaje ensamblador tiene una correspondencia exacta con una
operación en el procesador. Por lo que son operaciones muy sencillas tales como: “Cargar 32 en
el registro BX” o “Transferir el contenido del registro CL al CH”. Así pues, las palabras del lenguaje
ensamblador son nemotécnicos que representan el código máquina, lenguaje que entiende el
procesador.

1.1. Tamaño delos datos
En el 8086/88 se definen los siguientes tamaños de datos:
4 bits

nibble

8 bits

byte

16 bits

word

32 bits

dword

1.2. Almacenamiento de datos
El 8086/88 usa el formato de almacenamiento denominado “little endian”, esto quiere decir que el
byte menos significativa (LSB) del dato es guardada en la parte baja de la memoria. Por ejemplo
el dato 0x1122 seráalmacenado en memoria:
000….0

22
11

FFF….F
Es importante tener esto en cuanta a la hora de acceder a los datos para operar con ellos.

1.3. Segmentación
El 8086/88 tiene un ancho de bus de datos de 16 bits y un ancho de bus de direcciones de 20 bits.
Con 20 bits de direcciones se puede acceder a 220 = 1 Mega posiciones de memoria. Como cada
dirección de memoria contiene un byte, el total dememoria accedido por el procesador es de 1
Mbyte. El bus de datos de 16 bits lo que implica que en cada acceso a memoria se leen dos
1

Ensamblador 8086/88

posiciones. Esta es la razón por que la que es importante saber el modo de almacenamiento de
los datos en memoria, visto en el apartado anterior.
El problema que se les planteó a los diseñadores fue que siendo los registros internosdel
procesador de 16 bits, y el bus de direcciones de 20; faltaban 4 bits para poder aprovechar al
máximo las capacidades de direccionamiento del procesador. Para resolver esto, cada dirección
de memoria será especificada como un segmento y un desplazamiento dentro de ese segmento.
Esta solución divide la memoria en segmemtos de 64 K, lo cual limitó bastante los diseños de los
procesadoresposteriores de la familia (80286,80386 etc.); aunque posteriormente se idearon
métodos para resolver este problema, como la memoria extendida (no compatible, por supuesto,
con el 8086/88).
Así pues el 8086/88 dispone de una serie de registros para almacenar los valores de segmentos,
como veremos en los siguientes apartados.
Para obtener la dirección de memoria (dirección efectiva): se toma elvalor de registro de
segmento, se desplaza 4 bits, y se le suma el valor del desplazamiento.
Segmento

0000 0000 0000 1010

Desplazamiento +
Dirección efectiva

desplazado 4 bits

0101 1111 0000 1010
0000 0101 1111 0101 1010

Esta operación la realiza el procesador de forma interna automáticamente.

2. Registros internos
El 8086/88 dispone de 4 registros de datos, 4 registros desegmento, 5 registros de índice y 1
registro de estado.

2.1. Registros de datos
Los registros de datos son de 16 bits, aunque están divididos. lo que permite su acceso en 8 bits.
Estos registros son de propósito general aunque todos tiene alguna función por defecto.
AX (acumulador) se usa para almacenar el resultado de las operaciones, es al único registro con
el que se puede hacer divisionesy multiplicaciones. Puede ser accedido en 8 bits como AH para
la parte alta (HIGH) y AL (LOW) para la parte baja.
AX:

AH

AL

BX (registro base) almacena la dirección base para los accesos a memoria. También puede
accederse como BH y BL, parte alta y baja respectivamente.
CX (contador) actúa como contador en los bucles de repetición. CL (parte baja del registro)
almacena el...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Graficacion
  • Graficacion
  • Graficacion
  • Graficacion
  • Graficacion
  • Graficacion
  • Graficacion
  • Graficacion

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS