Introducción Al EMU8086: Facultad: Estudios Tecnologicos. Escuela: Electrónica. Asignatura: Microprocesadores
Introducción Al EMU8086: Facultad: Estudios Tecnologicos. Escuela: Electrónica. Asignatura: Microprocesadores
Introducción Al EMU8086: Facultad: Estudios Tecnologicos. Escuela: Electrónica. Asignatura: Microprocesadores
1 1
Utilizar el programa emulador EMU8086 y relacionarlo con los elementos básicos que
conforman el modelo de programación del microprocesador 8086.
Figura 2
Figura 3
Guía
1 3
También podrá ver, en la parte central, tres columnas en las que se detalla
el contenido de los registros del 8086, el contenido de la memoria y el
programa desensamblado. Abajo podrá acceder a la pantalla de usuario
(user screen), el código fuente (actual source), la Unidad Aritmética y
Lógica (ALU), la Pila (stack) y el registro de banderas (flags) o estados.
fuente.
Figura 4
PRIMER PROGRAMA
#MAKE_COM# ORG
INICIO
100h
11) Puede observar una copia del código fuente en el que se marca la línea
de instrucción que será ejecutada. También puede ver en la ventana del
emulador el contenido de los registros, la memoria y el programa
desensamblado. Si tiene problemas para interpretar esta información,
por favor solicite asistencia por parte de su instructor.
Figura 5
15) Ejecute solo la primera instrucción (Single step). Observe los cambios
(sobre todo en CS e IP) ¿se cargó el dato esperado en AH?
19) Cierre la ventana del emulador, pero no cierre la ventana del código
fuente.
20) Cree un archivo nuevo, tipo COM y escriba el código llamado SEGUNDO
PROGRAMA, después de su respectivo encabezado, no olvide los
tabuladores.
SEGUNDO PROGRAMA
NOTA: Observe que la instrucción MOV se ha escrito de diferentes formas.
INICIO #MAKE_COM#
ORG 100h
DX = 112h
BX = DX
MOV DX, 0112h ; Carga dato inmediato en DX
MOV BX, DX ; Copia DX en BX, movimiento entre
AL = ‘A’
AH = 61h
;registros
M [BX] = AH MOV AL, 'A' ; Almacena carácter en
AL MOV AH, 61h ; Guarda dato en
M [BX +1] = AL
AH
CX = M [BX]] MOV [BX], AH ; Almacena en dirección indicada por
; DS:BX, indirecto
TABLA 2
Guía
1 9
28) Cierre la ventana del emulador, pero no cierre la ventana del código
fuente.
TABLA 3
TERCER PROGRAMA
#make_com#
INICIO
Org 100h
RET
FIN
CH: 1000001b
CL: ‘G’
BX: 5Eh
Guía
1 12
a) Primer programa.
-Decimal
-Carácter
-Hexadecimal
-Binario
b) Segundo programa.
c) Tercer programa.
Investigue:
El resto de los modos sirve para localizar un operando en memoria. Para facilitar la
explicación de estos modos, se pueden resumir de la siguiente manera:
Deben sumarse cuatro cantidades:
dirección de segmento
dirección base
una cantidad índice
un desplazamiento.
Guía
1 15
Directo:
Indirecto:
Basado:
Indexado:
12) [SI+desp8],
13) [DI+desp8],
14) [SI+desp16], Ejemplo: MOV AX, [SI+4000h]
15) [DI+desp16].
Basado-indexado:
16) [BX+SI],
17) [BX+DI], Ejemplo: MOV AX, [BX+DI]
18) [BP+SI],
19) [BP+DI].
MOV:
XCHG:
XCHG realiza el intercambio entre los valores de los operandos. Puede tener
operando en registros y en memoria:
Brey, B. B. Los Microprocesadores Intel. 8086 / 8088, 80186, 80286, 80386 y 80486.
Arquitectura, programación e interfaces, Prentice Hall, México DF, 19953
Biblioteca UDB 001.6404 B847 1997