Documentos de Académico
Documentos de Profesional
Documentos de Cultura
03 Ejercicios Ensamblador Res
03 Ejercicios Ensamblador Res
Dirección General de Servicios de Cómputo Académico
Dirección de Cómputo para la Docencia
Escribir un programa que tome tres cadenas, la primera y la tercera representan un número
y la segunda una operación, por ejemplo: «329», «-«, «21» e imprima el resultado «308»
mov bl, 10
mul bl
sub cad1[si], '0'
add al, cad1[si]
inc si
loop cadAnum
seguir:
mov aux1, al
;Convertir segunda cadena a numero
mov si, 0
mov al, 0
cadAnum2:
cmp cad3[si], "$"
jz seguir2
mov bl, 10
mul bl
sub cad3[si], '0'
add al, cad3[si]
inc si
loop cadAnum2
seguir2:
mov bl, al
mov al, aux1
;realizar operaciones normalmente teniendo ya los dos numeros decimales
cmp cad2, "-"
jz resta
cmp cad2, "+"
jz suma
fin:
mov bx, ax
mov ah,09
lea dx,msg
int 21h
mov ax, bx
call PRINT_NUM
ret
cad1 db "10$"
cad2 db "-"
cad3 db "2$"
aux1 db ?
aux2 dw ?
msg dw "El resultado es: $"