Está en la página 1de 9

1.

Explicar mediante un gráfico en que consiste las instrucciones tipo salto del Lenguaje Ensamblador (Direcciones corta, cercana y lejana, etiquetas, saltos
incondicionales, saltos condicionales, instrucciones de testeo, decisiones y bucles). Cada instrucción debe tener una definición y 1 ejemplo en lenguaje
ensamblador
2. Desarrollar un código en lenguaje ensamblador que permita leer un número de un digito por
teclado y determinar si el número es par, impar o cero. Documentar perfectamente todo el
código. Generar tres capturas por pantalla de la ejecución del programa. Anexar Archivo
.asm del programa.
Nota:
 No utilizar Simuproc. Utilizar el programa EMU8086
 Anexar el archivo .asm significa presentar en un archivo aparte con la extensión .asm ya
que es el código fuente del programa. NO es pegar el código en el documento informe, es
otro archivo
 A demás de una portada inicial con la siguiente información en el código fuente
; You may customize this and other start-up templates;

; The location of this template is c:\emu8086\inc\0_com_template.txt

org 100h

; add your code here

;Wiris Rafael Contreras

;1051816706

;Grupo 42

;Fecha 03-05-2018

.data

var1 db ?

msg1 db 'INGRESE EL NUMERO: $'

msg2 db ' EL NUMERO INGRESADO ES PAR: $'

msg3 db ' EL NUMERO INGRESADO ES IMPAR: $'

msg4 db ' EL NUMERO INGRESADO ES CERO: $'

.code

.start

mov ah,09h

lea dx, msg1

int 21h

mov ah,01h

int 21h

sub al,30h

mov var1,al
mov al,0h

cmp var1,al

ja mayor

jb menor

je igual

mayor:

mov ah,09h

lea dx,msg2

int 21h

jmp salir

menor:

mov ah,09h

lea dx,msg3

int 21h

jmp salir

igual:

mov ah,09h

lea dx,msg4

int 21h

jmp salir

salir:

.exit

End
3. Desarrollar un código en lenguaje ensamblador que permita realizar una multiplicación de
dos números a través de sumas sucesivas y una potencia a través de multiplicaciones
sucesivas (para ello debe utilizar instrucciones tipo bucle). Al inicio del programa se deben
capturar por teclado dos números de un digito cada uno. Documentar perfectamente todo el
código. Generar tres capturas por pantalla de la ejecución del programa. Anexar Archivo
.asm del programa.
Nota:
 No utilizar Simuproc. Utilizar el programa EMU8086
 Anexar el archivo .asm significa presentar en un archivo aparte con la extensión .asm el
código fuente del programa. NO es pegar el código en el documento informe, es otro
archivo
 A demás de una portada inicial con la siguiente información en el código fuente

; You may customize this and other start-up templates;

; The location of this template is c:\emu8086\inc\0_com_template.txt

org 100h

;Nombre del Autor:Wiris Rafael Contreras

;Codigo:1051816707

;Grupo No: 42
;Fecha:03-05-2018

.model

.stack

.data

.data

msj1 db 'Numero 1 y Potencia:','$'

msj2 db 13,10,'Numero 2 y Base:','$'

msj3 db 13,10,'Multiplicacion:','$'

msj4 db 13,10,'Potencia:','$'

linea db 13,10,'$'

var1 db 0

var2 db 0

.code

call limpia

mov ah,9

lea dx, msj1

int 21h

call leer

sub al,30h

mov var1,al

mov ah,09
lea dx, msj2

int 21h

call leer

sub al,30h

mov var2,al

mov cl,var1

sub cl,1

;Multiplicacion

add al,var2

mov ah,09h

lea dx, msj3

int 21h

mov dl,al

add dl,30h

mov ah,02h

int 21h

;Potencia

mov cl,var1

mov bl,var2

mov al,var2

sub cl,1

mul bl
mov ah,09h

lea dx, msj4

int 21h

mov dl,al

add dl,30h

mov ah,02h

int 21h

.exit

;Procedimientos

salto proc near

mov ah,09h

lea dx,linea

int 21h

mov dl,00h

ret

salto endp

leer proc near

mov ah,01h

int 21h

ret

leer endp

limpia proc near

mov ah,00h

mov al,03h
int 10h

ret

limpia endp

end

También podría gustarte