jueves, 8 de diciembre de 2016

Programa Multplicación

.model small
.stack 100h
.data
d1 db ?
d2 db ?
crlf db 10,13,10,13,"$"

problema   db "Multiplicacion de dos numeros $"
digito1     db "Valor 1: = $ "
digito2     db "Valor 2: = $ "
result     db "El resultado es: $ "

.code
inicia_operacion:

mov ax,@data
mov ds,ax

mov dx,offset crlf ; insertar linea
mov ah,09h
int 21h

mov dx,offset problema ;mensaje como titulo
mov ah,09h
int 21h

mov dx,offset crlf ;insertar linea
mov ah,09h
int 21h

mov dx,offset digito1
mov ah,09h
int 21h
mov ah,01h
int 21h
mov d1,al
sub d1,30h
mov dx,offset crlf ;insertar linea
mov ah,09h
int 21h
mov dx,offset digito2
mov ah,09h
int 21h
mov ah,01h
int 21h
mov d2,al
sub d2,30h
mov dx,offset crlf ;insertar linea
mov ah,09h
int 21h
mov dx,offset crlf ;insertar linea
mov ah,09h
int 21h
;calculo de la multiplicacion-----
mov ax,0h ;limpiar el acumulador
mov al,d1
mul d2
aam ; (aam) aplicar ajuste ascii de la multiplicacion
mov bx,ax

;mostrar el resultado de la operacion

mov dx,offset result
mov ah,09h
int 21h

mov dl,bh ; mostra decenas
add dl,30h
mov ah,02h
int 21h

mov dl,bl
add dl,30h
mov ah,02h
int 21h

;insertar linea

mov dx,offset crlf
mov ah,09h
int 21h

_salir_a_modo_de_msdos:

mov ah,4ch
int 21h

end inicia_operacion
























No hay comentarios:

Publicar un comentario