Académique Documents
Professionnel Documents
Culture Documents
Objetivo General
Analizar la forma en que se ejecutan algunas instrucciones lgicas observando como
stas afectan al registro de estados.
Objetivos especficos
Materiales y equipos
Gua de laboratorio
Computadora PC con el programa EMU8086
Procedimiento
1) Abra el EMU 8086 y digite el PRIMER PROGRAMA
Gua
PRIMER PROGRAMA
NOTA: en este programa se estn usando la instruccin con registros de 8 y
16 bits, as como las directivas DB y DW.
.model small
.stack
.data
dato1
db
9Ah ; Dato 8 bits
dato2
dw
2CC2h ; Dato 16 bits
mascara1
db
0F0h ; Mscara 8 bits
mascara2
dw
0F0Fh ; Mscara 16 bits
.code
mov dl, dato1 ;primera parte
mov ah, mascara1
and dl, ah
mov cx, dato2 ; segunda parte
mov bx, mascara2
and cx, bx
and cx, cx
mov ax, 4c00h ;fin del programa
int 21h
END
Gua
6) Ejecute paso a paso el primer bloque. Anote los datos con los que se realizan
las operaciones y los resultados de las mismas, los registros que intervienen en
el proceso y el estado de las banderas en cada paso del proceso.
__________________________________________________________________
__________________________________________________________________
SEGUNDO PROGRAMA
.model small
.stack
.data
.code
mov dl, 1Ah
mov ax, 2CC2h
;primer bloque
xor dl, ah
xor dl, 0FFh
;segundo bloque
xor dl, ah
not dl
mov ax, 4c00h ;fin del programa
int 21h
End
7) Ejecute ahora el segundo bloque y anote los datos con los que se opera, los
resultados y las banderas que se activan durante el proceso.
__________________________________________________________________
__________________________________________________________________
8)
Gua
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
10) Digite el TERCER PROGRAMA:
11) Ejecute solo las primeras dos instrucciones, monitoreando las banderas Cules
se activaron?, cul fue el resultado de la operacin? cmo interpreta el
resultado?
__________________________________________________________________
__________________________________________________________________
12) Ejecute hasta la instruccin TEST y conteste otra vez las preguntas del punto
11 del procedimiento.
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
Gua
TERCER PROGRAMA
INICIO
AH = 0B9h
.model small
.stack
.data
.code
mov ah, 0B9h ;En binario 1011_1001
AH = AH AND 40h
;Mascara 0100_0000
;Si Z=1 implica que D6=0
or ah, 01
AL = AL OR 01
AH = 0B9h
FIN
mov ax, 4c00h ;fin del programa
int 21h
End
Anlisis de resultados
a) Primer programa.
Qu objetivos se buscan al usar la mascara1 (F0h) con las tres diferentes
instrucciones lgicas?
Cuando se ejecuta la primera instruccin AND el bit D7 termina en estado alto y se
activa la bandera S, en la segunda instruccin AND tambin termina en alto, pero esta
vez no se activa la bandera por qu?
Cuando se ejecuta la tercera instruccin lgica, ya sea AND u OR, las banderas
reaccionan de forma similar. Pero cuando se ejecuta con la instruccin XOR no por
qu ocurre eso?
En el programa se declaran datos para hacer las operaciones dnde se guardan estos
datos?
b) Segundo programa.
Cuando se ejecutan el primer bloque del programa el resultado se almacena en DL, lo
mismo curre con el segundo bloque; los dos resultados son idnticos, pero el estado de
las banderas no lo es por qu?
Al modificar el programa, tanto los resultados como las banderas terminaron en
distintos estados cules fueron los cambios especficos que observo?
Gua
c) Tercer programa.
Cul es la diferencia fundamental que noto a comparar las instrucciones AND y TEST?
Qu relacin existe entre los bit que deseamos probar y el valor especfico de la
mascara seleccionada?
Tarea complementaria
En el programa se declaran algunos datos que sern operados dnde se almacenan
estos datos?
Investigue que son las directivas DB y DW
Escriba un programa que dado un dato almacenado en AX invierta el estado de los bits
impares desde el D5 hasta el D1, borre los bits pares desde el D6 hasta el D2 y
coloque en 1 los bits D7 y D0
Bibliografa
Brey, B. B. Los Microprocesadores Intel. 8086 / 8088, 80186, 80286, 80386 y 80486.
Arquitectura, programacin e interfaces, Prentice Hall, Mxico DF, 19953
Biblioteca UDB 001.6404 B847 1997
Puede consultar el material en lnea del EMU8086 sobre los temas de esta actividad. Se
recomiendan: