.486 ; create 32 bit code
.model flat, stdcall ; 32 bit memory model
option casemap :none ; case sensitive
include masm32includewindows.inc ; always first
include masm32macrosmacros.asm ; MASM support macros
; -----------------------------------------------------------------
; include files that have MASM format prototypes for function calls
; -----------------------------------------------------------------
include masm32includemasm32.inc
include masm32includegdi32.inc
include masm32includeuser32.inc
include masm32includekernel32.inc
; ------------------------------------------------
; Library files that have definitions for function
; exports and tested reliable prebuilt code.
; ------------------------------------------------
includelib masm32libmasm32.lib
includelib masm32libgdi32.lib
includelib masm32libuser32.lib
includelib masm32libkernel32.lib
.data?
val1 dd ?
val2 dd ?
resp dd ?
opc dd ?
val3 dd ?
.code
; «««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««
start:
print chr$(13,10)
print "Este es un programa de prueba!",13,10,13,10
print " CALCULADORA",13,10,13,10
print " 1. SUMAR",13,10
print " 2. RESTAR",13,10,13,10
mov opc, input("Introduzca la opcion: ",62," ")
mov opc, sval(opc)
.if opc == 1
mov val1, input("Introduzca el primer valor: ",62," ")
mov eax, sval(val1)
mov val2, input("Introduzca el segundo valor: ",62," ")
mov ecx, sval(val2)
add eax, ecx
mov val3, eax
print " La suma es ",62," "
print str$(val3),13,10
.elseif opc == 2
print chr$(13,10)
;mov resp, 0
;mov eax, 0
;mov ecx, 0
;mov val1, 0
;mov val2, 0
print str$(val1),13,10
mov val1, input("Introduzca el primer valor: ",62," ")
mov eax, sval(val1)
mov val2, input("Introduzca el segundo valor: ",62," ")
mov ecx, sval(val2)
sub ecx, eax
mov resp, ecx
print " La resta es ",62," "
print str$(resp),13,10
.else
print chr$(13,10)
print " Usted no eligio ninguna opcion",13,10
.endif
print chr$(13,10)
exit
; «««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««««
end start