ASM-Guía 1

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 5

Introducción al EMU8086

1) Ejecute el programa emulador de microprocesadores EMU8086, haciendo doble


clic en el icono del escritorio, Aparecerá una ventana como la Figura 1.

Figura 1: Ventana inicial del emu8086

2) Presione el botón que indica “New”.

3) Observará una ventana donde escribirá sus futuros programas, llamados en


general “código fuente”.

4) Desde ahí se puede crear un nuevo documento. Observe la figura 2 “Choose


code template

Figura 2
Se le presentarán seis opciones, elija “empty workspace”. Observará (apóyese
en la Figura 3) una ventana con la clásica barra de menú (File, Edit, etc.) con
algunos elementos distintivos (Compile, Emulator, Math, etc.) así como una
serie de botones que le permiten abrir un nuevo archivo, compilar, emular y
otras funciones útiles. En el texto observará dos líneas de comando que son un
encabezado necesario para crear un archivo tipo COM.

Figura 3

5) Seleccione en la barra de menú la opción “EMULATOR” y en ésta “SHOW


EMULATOR”. Se abrirá una ventana donde podrá observar diferentes elementos
(apóyese en la Figura 4 para interpretar información). Algunos botones que
permiten realizar acciones como: cargar (load), recargar (reload), ejecutar
paso a paso (single step) y ejecutar (run). 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.

6) Cierre la ventana del emulador, pero no cierre la ventana del código fuente.

NOTA: las direcciones de memoria están escritas en el formato de segmento y desplazamiento”


Figura 4

7) Ahora analice el siguiente código fuente (llamarlo PRIMER PROGRAMA),


ayudándose de los comentarios y del diagrama de flujo que lo acompaña.
Intente predecir cada cambio que tendrán los datos hexadecimales en los
registros del microprocesador.

PRIMER PROGRAMA
#MAKE_COM#
INICIO
ORG 100h

AH = 7Ah mov AH, 7Ah ;carga AH con 7Ah


BL = 99 mov BL, 99 ;carga BL con 99
CL = 11001111b mov CL, 11001111b ;carga CL con 11001111b

AX = 100 mov AX, 100 ;carga AX con 100


BX = ‘A’
CX = 0ABCDh
mov BX, ‘A’ ;carga BX con carácter A
DX = 6540 mov CX, 0ABCDh ;carga CX con ABCDh
mov DX, 6540 ;carga DX, con 6540

ret ;termina el programa


FIN

8) Analice los tipos de movimientos y la base numérica

9) Usando el botón respectivo compile el código fuente, note que el programa le


informa que creará un archivo con extensión COM.
10)
Si no se dan errores de compilación proceda a emular el programa. Analice la
información que se le presenta auxiliándose de la Figura 5.

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.

Figura 5

12) Copie los datos almacenados en los registros antes de ejecutar el programa:

AX: BX: CX: DX:

CS: DS: ES: SS:

BP: IP: SP

DI: SI:

13) Ejecute el programa totalmente (RUN) y anote los datos resultantes. Verifique
si concuerdan con los datos que usted esperaba.

AX: BX: CX: DX:

CS: DS: ES: SS:

BP: IP: SP

DI: SI:
14) Cargue nuevamente el programa, observe el contenido de los registros, sobre
todo el contenido de CS e IP. Analice sus observaciones comparándola con la
que aparece en la TABLA 1. Si tiene dudas por favor solicitar asistencia de su
instructor.

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?

16) Interprete la información de la TABLA 1 respecto de sus resultados

17) Continúe ejecutando paso a paso el programa hasta la instrucción RET, al


mismo tiempo llene los espacios vacíos de la TABLA 1.

18) Continúe ejecutando las instrucciones hasta concluir el programa.

DIRECCIONES LENGUAJE DE LENGUAJE


MÁQUINA ENSAMBLADOR
SEGM(CS) OFFSET CAMPOS LINEA
0B56 0100 B4 7ª mov AH, 7A
mov BL, 99
mov CL, 11001111b
mov AX, 100
mov BX, 78
mov CX, 0ABCDh
mov DX, 6540
ret
NOTA: A partir de este punto el programa ejecuta un procedimiento
predeterminado llamado Interrupción.
0B56 0000 INT 20H
F400 0150
TABLA 1

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.

También podría gustarte