Resumenes
FACULTAD DE CIENCIAS E INGENIERIAS FISICAS Y FORMALES
PROGRAMA PROFESIONAL DE INGENIERIA ELECTRONICA
CURSO:
MICROPROCESADORES
TEMA:
INFORME CUARTA PRÁCTICA
DOCENTE:
ING. JAIME MARTINEZ ROMERO
PRESENTADO POR:
ERNESTO GONZALO FIGUEROA SOTOMAYOR
VII SEMESTRE
JUNIO – 2010
1- Abra el emu8086
2- Revise la sintaxis de lasinstrucciones AAA, AAS y DAA en el simulador pulsando
la tecla F1 y dando clic en el título “8086 Instruction set”.
3- Minimice la ventana y regrese al emulador, en la barra de menú seleccione
“ASCII codes” e identifique en la tabla de caracteres ASCII los números
correspondientes a los números del 0 al 9 y anótelos a continuación (al dar clic
en cualquier parte de la ventana puede intercambiar entrever los datos ASCII
en su correspondiente decimal o hexadecimal):
4- Digite el PROGRAMA 1 en el simulador: este es un ejemplo de uso de AAA
.model small.stack.dataoperando1 db 39h ; 39h codigo ascii del 9 decimaloperando2 db 39hresultadoascii db 2 dup (?) ;reserva dos byte para el resultado.codemov ax, @DATA ;indica donde estan los datos que se van a operarmov ds, axmov ax,0moval,operando1add al,operando2aaa ;ajuste ascii despues de sumar 2 bytes asciiadd ax,3030hmov resultadoascii, ahmov resultadoascii+1,almov ax,4c00hint 21hend |
5- Dé clic sobre EMULATE y abra la ventana de variables (en el botón VAR),
debería visualizar 3 elementos: Operando1, Operando2 y resultadoascii,
seleccione en las opciones de “Show as” de cada variable, la visualización
“ASCII”, en la variableresultadoascii también cambien elements a 2.
6- Corra el programa paso a paso hasta antes de ejecutar la operación AAA,
observe el estado del acumulador y de las banderas, especialmente AF
7- Ejecute la instrucción de ajuste y observe el estado del acumulador y las
banderas en este momento especialmente CF y AF ____________________
8- Ejecute todo el programa
9- Observe el contenido dela variable resultadoascii
10- Modifique el programa anterior poniendo como operandos los números 34h y
32h
11- Repita el procedimiento de los pasos 5 al 9 y describa las diferencias en los
estados del acumulador y las banderas AF y CF
12- Copie el PROGRAMA 2 que es una aplicación del ajuste AAS
model small.stack.dataoperando1 db 36h ; 39h codigo ascii del 9 decimaloperando2 db32hresultadoascii db 2 dup (?) ;reserva dos byte para el resultado.codemov ax, @DATA ;indica donde estan los datos que se van a operarmov ds, axmov ax,0mov al,operando1sub al,operando2aasadd ax,3030hmov resultadoascii, ahmov resultadoascii +1, almov ax,4c00hint 21hend |
13- Repita el paso 5.
14- Corra el programa paso a paso hasta antes de ejecutar la operación AAS,
Observe el estado del acumulador yde las banderas, especialmente AF y CF
15- Ejecute la instrucción de ajuste y observe el estado del acumulador y las
banderas en este momento especialmente CF y AF ____________________
16- Ejecute todo el programa
17- Observe el contenido de la variable resultado ascii
18- Cambie los operandos de modo que el operando2 sea mayor que operando1 y
ejecute el programa ¿por qué se da esteresultado?
19- Copie el PROGRAMA 3 que es una aplicación de ajuste DAA
.model small.stack.dataoperando1 db 99hoperando2 db 98hresultadoBCD dw 0.codemov ax, @DATA ;indica donde estan los datos que se van a operarmov ds, axmov ah,00mov al,operando1mov bl,operando2add al,bldaaadc ah,00mov resultadoBCD, AXmov ax,4c00hint 21hend |
20- Dé clic sobre EMULATE y abra la ventana de variables (en elbotón VAR),
Debería visualizar 3 variables: Operando1, Operando2 y resultadoBCD,
seleccione en las opciones de “Show as” la visualización “HEXA” para las tres
variables.
21- Corra el programa paso a paso hasta antes de ejecutar la operación DAA,
observe el estado del acumulador y de las banderas, especialmente AF y CF
23- ¿Cuál es el propósito de la suma del acumulador AH con 00h? (ADC AH,...
Regístrate para leer el documento completo.