Está en la página 1de 7

DEPARTAMENTO DE ELÉCTRICA Y

ELECTRÓNICA

CARRERA DE INGENIERÍA EN ELECTRÓNICA Y TELECOMUNICACIONES

CARRERA DE INGENIERÍA EN ELECTRÓNICA, AUTOMATIZACIÓN Y


CONTROL

MICROPROCESADORES

GUÍA DE PRÁCTICA: USO DEL EMU8086

PROFESOR: JULIO TORRES TELLO

SANGOLQUÍ, ECUADOR

2017
Universidad de las Fuerzas Armadas ESPE

MICROPROCESADORES
Guı́a de practica 1

Integrantes:
NRC: Fecha:

1. Indicaciones Generales
1. Tema: Uso del EMU8086.

2. Fecha lı́mite de entrega: Una semana contando desde el dı́a de la realización de la práctica.
3. Documentación a entregar: Documento pdf enviado al aula virtual.

2. Objetivos
2.1. Objetivo General
Aprender a utilizar el programa emulador EMU8086, sus funciones básicas; y relacionarlo con los
conceptos estudiados en clase sobre microprocesador 8086.

2.2. Objetivos Especı́ficos


Identificar los principales elementos que conforman el ambiente de programación del software
EMU8086.
Observar la relación que existe entre los lenguajes de ensamblador y máquina.
Reconocer de forma intuitiva los modos de direccionamiento básicos del microprocesador 8086.

Utilizar el emulador en la creación y ejecución un archivo tipo ejecutable básico.

3. Materiales y Equipos
Guı́a de laboratorio.

Computadora con el programa EMU8086.

4. Procedimiento
1. Ejecute el programa emulador de microprocesadores EMU8086, haciendo doble clic en el icono del
escritorio, Aparecerá una ventana como la Figura 1.
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”.

5. Se le presentarán seis opciones, elija “empty workspace”. En el texto observará dos lı́neas de
comando que son un encabezado necesario para crear un archivo tipo COM.

Departamento de Eléctrica y Electrónica 2


Universidad de las Fuerzas Armadas ESPE

Figura 1: Ventana inicial del emu8086.

Figura 2: Plantillas del emu8086.

Figura 3: Ventana de trabajo.

6. Ahora analice el siguiente código fuente (Figura 4), 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.
7. Usando el botón respectivo compile el código fuente, note que el programa le informa que creará
un archivo con extensión COM. ¿Qué nombre la asigna el sistema al archivo .COM?

8. Si no se dan errores de compilación proceda a emular el programa. Analice la información que se


le presenta. 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).
9. Copie los datos almacenados en los registros antes de ejecutar el programa, en el cuadro 1:

10. Ejecute solo la primera instrucción (Single step). Observe los cambios (sobre todo en CS e IP). ¿Se
cargó el dato esperado en AH?

Departamento de Eléctrica y Electrónica 3


Universidad de las Fuerzas Armadas ESPE

Figura 4: PRIMER PROGRAMA

Figura 5: Emulador y código fuente.

AX: 0000 BX: 0000 CX: 0013 DX: 0000


CS: 0700 DS: 0700 ES: 0700 SS: 0700
BP: 0000 IP: 0100 SP: FFFE
DI: 0000 SI: 0000

Cuadro 1: Programa 1 - Registros antes de ejecutar el programa.

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

AX: 0064 BX: 0041 CX: ABCD DX: 198C


CS: 0700 DS: 0700 ES: 0700 SS: 0700
BP: 0000 IP: 0112 SP: FFFE
DI: 0000 SI: 0000

Cuadro 2: Programa 1 - Registros después de ejecutar el programa.

Departamento de Eléctrica y Electrónica 4


Universidad de las Fuerzas Armadas ESPE

12. Continúe ejecutando paso a paso el programa hasta la instrucción RET, al mismo tiempo llene los
espacios vacı́os del cuadro 3.
13. Cargue nuevamente el programa, observe el contenido de los registros, sobre todo el contenido de
CS e IP. ¿A qué se deben los cambios?

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

DIRECCIONES LENGUAJE DE LENGUAJE


MÁQUINA ENSAMBLADOR
SEGM(CS) OFFSET CAMPOS LÍNEA
0700 0100 B4 7A mov AH, 7A
0700 0102 B3 63 mov BL,99
0700 0104 B1 CF mov CL,11001111b
0700 0106 B8 64 00 mov AX,100
0700 0109 B3 41 00 mov BX,78
0700 010C B9 CD AB mov CX,0ABCDh
0700 010F BA 8C 19 mov DX,6540
0700 0112 C3 ret
Nota: A partir de este punto el programa ejecuta un procedimiento
predeterminado llamado Interrupción.
0700 0000 CD 20 INT 20H
F400 0150 FF FF

Cuadro 3: Ejecución del Programa 1.

15. Cree un archivo nuevo, tipo COM y escriba el código llamado SEGUNDO PROGRAMA (Figura
6).

Figura 6: SEGUNDO PROGRAMA. Observe que la instrucción MOV se ha escrito de diferentes formas.

16. Emule el programa y antes de ejecutarlo anote en el cuadro 4 el contenido de las direcciones que
tienen desplazamiento 0112h y 0113h.
17. Corra paso a paso el programa hasta antes de ejecutar la quinta instrucción, tratando de predecir
las acciones que se realizarán, auxiliándose de los comentarios de cada instrucción.
18. Observe y anote en el cuadro 4 los resultados de su observación.

Departamento de Eléctrica y Electrónica 5


Universidad de las Fuerzas Armadas ESPE

SEG (DS) OFFSET Inicio del programa Cuarta Inst. Quinta Inst. Sexta Inst. Séptima Inst.
0700 0112H 90 90 61 61 61
0700 0113H 90 90 90 41 41

Cuadro 4: Localidades de memoria Programa 2.

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

20. Escriba un nuevo programa .COM y digite el código llamado TERCER PROGRAMA (Figura 7).

Figura 7: TERCER PROGRAMA.

21. Emule y ejecute el programa (RUN) y note la información que se presenta en la pantalla de usuario,
debe observar un carácter ‘A’ con un color para el fondo y para el carácter. Anote esa información.
El caracter es 'A' color blanco y color de fondo es rodado se encuentra centrado

22. Modifique el programa sustituyendo el dato que se almacena en BX (15Eh) por 10Eh y corra el
programa. Luego use 10Fh.
23. Observe y describa como afectó el cambio al funcionamiento del programa.
Al cambiar 15Eh por 10Eh se alineo a la derecha y al usar 10Fh
no observamos nada ya que debemos tener un numero par.

24. Modifique ahora el dato almacenado en CH, cambiándolo por 11010000b y observe su efecto, anote
sus observaciones. Cambia el color del caracter

25. Pruebe a hacer algunos cambios en CH, CL y BX, anote sus observaciones.
Va a cambiar dependiendo de los numeros que ingresemos CH cambia la color del caracter CL cambia el caracter
BX cambia la direccion

Departamento de Eléctrica y Electrónica 6


Universidad de las Fuerzas Armadas ESPE

5. Preguntas
5.1. Primer programa
En el encabezado del programa ¿por qué se incluye la lı́nea “org 100h”?

Al introducir datos en los registros del microprocesador se usan diferentes formatos (bases de
numeración) ¿cuántos y cuáles son?

Al observar la tabla1 se nota que a la misma instrucción MOV se le asignan diferentes códigos
hexadecimales ¿a qué se debe esto?

En la columna OFFSET del cuadro 3, éstos no se incrementan a una razón constante ¿por qué?

5.2. Segundo programa


¿Por qué al ejecutar la séptima instrucción los datos se almacenan en CX en ese orden especı́fico?

5.3. Tercer programa


Al ejecutar el programa, a medida que hacı́a las modificaciones ¿qué efecto concreto logra el cambio
en el registro BX?

Referencias
[1] B. B. Brey, The Intel Microprocessors. Pearson Education, Nov. 2011.
[2] “Documentación de ayuda del EMU8086.”

Departamento de Eléctrica y Electrónica 7

También podría gustarte