3.tercer ejercicio emu8086
TRANSCRIPT
![Page 1: 3.tercer ejercicio emu8086](https://reader035.vdocuments.co/reader035/viewer/2022062222/58ee7de41a28ab62618b45f5/html5/thumbnails/1.jpg)
1) El programa nos pide que ingresemos un numero para comprobar si el numero ingresado es mayor a 5 o menor, de la misma manera nos dice que si queremos salir del programa tecleemos cualquier otro carácter que no sea un número.
2) -la instrucción (mov dx) es lo que nos permite poner hasta donde va a llegar la limpieza de la pantalla.-La ultima instrucción (int 21h) llama al BIOS.-La instrucción (mov ah) es lo que nos permite desplegar el mensaje.- msg1 db "enter a number or any other character to exit: $"equal_5 db " is five! (equal)", 0Dh,0Ah, "$"below_5 db " is below five!" , 0Dh,0Ah, "$"above_5 db " is above five!" , 0Dh,0Ah, "$"Este es un ejemplo de cómo declarar un mensaje, el mensaje es lo que está escrito entre comillas y termina con “$”.-La instruccion (mov ah,02h) es lo que nos permite mover el cursor.- Instrucciones de transferencia Son utilizadas para mover los contenidos de los operandos. Cada instrucción se puede usar con diferentes modos de direccionamiento.MOV.- JMP labelSaltar hacia la dirección label.- JB etiqueta/JNAE etiquetaSaltar a etiqueta si es menor.- JA etiqueta/JNBE etiquetaSaltar a etiqueta si es mayor.
3) nombre "banderas"
org 100h
; esta muestra muestra cómo conjuntos de instrucciones cmp las banderas. ; por lo general la instrucción de cmp es seguida de cualquier pariente ; instrucción de salto como: je, ja, jl, jae... ; se recomienda hacer clic en "banderas" y "analizar" ; para mejor expirience visual antes de andar a través de este código.
; (firmado/no firmado) ; 4 es igual a 4mov ah, 4mov al, 4cmp ah, al nop
; (firmado/no firmado); 4 Está por encima de y superior a 3 mov ah, 4mov al, 3cmp ah, alnop
![Page 2: 3.tercer ejercicio emu8086](https://reader035.vdocuments.co/reader035/viewer/2022062222/58ee7de41a28ab62618b45f5/html5/thumbnails/2.jpg)
; -5 = 251 = 0fbh
; (Firmado); 1 Es superior a -5mov ah, 1mov al, -5cmp ah, alnop
; (Sin firmar) ; 1 es inferior a 251mov ah, 1mov al, 251cmp ah, alnop
; (Firmado) ; -3 es inferior a -2mov ah, -3mov al, -2cmp ah, alnop
; (Firmado) ; -2 es superior a -3mov ah, -2mov al, -3cmp ah, alnop
; (Sin signo) ; 255 es superior a 1mov ah, 255mov al, 1cmp ah, alnop
; ahora un pequeño juego: juego:mov dx, offset msg1 mov ah, 9 int 21h
; lea el carácter en al: mov ah, 1 int 21h
cmp al, '0' jb stop
cmp al, '9'
![Page 3: 3.tercer ejercicio emu8086](https://reader035.vdocuments.co/reader035/viewer/2022062222/58ee7de41a28ab62618b45f5/html5/thumbnails/3.jpg)
ja stop cmp al, '5' jb below ja above mov dx, offset equal_5 jmp print
Debajo: mov dx, offset below_5
jmp print
Sobre: mov dx, offset above_5
Imprimir: mov ah, 9
int 21h jmp juego ; Bucle.
parada: ret; parada
msg1 db " Introduzca un número o cualquier otro carácter para salir: $"
equal_5 db " es cinco! (igual)", 0Dh,0Ah, "$"
below_5 db " es menor a cinco!" , 0Dh,0Ah, "$"
above_5 db " es mayor a cinco!" , 0Dh,0Ah, "$"
4)
Codigo del programa:
En este programa la idea es que aparezca el nombre de los que hicieron el trabajo y uno pueda ingresar un numero y le diga si es igual, menor o mayor a cinco, también mostraremos el desarrollo de las banderas en estos casos.
![Page 4: 3.tercer ejercicio emu8086](https://reader035.vdocuments.co/reader035/viewer/2022062222/58ee7de41a28ab62618b45f5/html5/thumbnails/4.jpg)
Al ejecutar el programa se puede ver un cambio en IF automáticamente para el inicio de la operación y al hacerlo correr ocurre lo siguiente.
Ocurre una variación en IF y se pone en 0 ya que se inicio la ejecución.
![Page 5: 3.tercer ejercicio emu8086](https://reader035.vdocuments.co/reader035/viewer/2022062222/58ee7de41a28ab62618b45f5/html5/thumbnails/5.jpg)
Desarrollando lo que dice el programa, ocurre una variación en AF, SF y CF en las banderas.
De la misma forma ocurre sucesivamente mientras mas avanzamos por el programa.
![Page 6: 3.tercer ejercicio emu8086](https://reader035.vdocuments.co/reader035/viewer/2022062222/58ee7de41a28ab62618b45f5/html5/thumbnails/6.jpg)
Podemos apreciar las variaciones en banderas de todos los tipos, hasta que lo damos por terminado.
Finalizando el programa con cualquier carácter que no sea un numero.