TITLE Allowance
INCLUDE irvine32.inc
.DATA
welcomeMessage BYTE "Welcome To Allowance Calculator", 0 ;
inputMessage BYTE "Please Enter Salary", 0 ;
salary WORD ?
allowance WORD ?
total WORD ?
ten WORD 10
five WORD 5
hundred WORD 100
limit WORD 2D
great BYTE "I'm in greater"
.CODE
main PROC
MOV EAX, 0
MOV EBX, 0
MOV ECX, 0
MOV EDX, 0
Sub limit, 1D
Call DumpRegs
MOV EDX, offset welcomeMessage
Call WriteString
MOV EDX, offset inputMessage
Call WriteString
Call ReadDec
MOV salary, Ax
cmp Ax, 100D
Call DumpRegs
Call WriteInt
JLE lesser
JG greater
greater:
MOV EDX, offset great
Call WriteString
MOV EAX, 0
MOV Ax, salary
MUL ten
DIV hundred
MOV allowance, Ax
Call WriteInt
JMP end1
lesser:
MOV EAX, 0
MOV Ax, salary
MUL five
DIV hundred
MOV allowance, Ax
Call WriteInt
JMP end1
end1:
exit
main ENDP
结束主
当我使用 CMP 命令进行比较时,它只会带我去 JGE.. 无论值是什么.. 有什么解决方案吗?
我也尝试使用 JE 并给出相同的输入,但即便如此,我也获得了更大的标签。