0
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を使おうとして同等のインプットをしましたが、それでも私はより大きなレーベルに行き着きました。

4

1 に答える 1