-2
我的問題是它不會比較第一個數字是否大於第二個數字。它只執行在這裏我打印我做了一個程序,只會在第一個數字大於第二個數字時纔會添加兩個數字,而不是比較
mov ah,9
lea dx,str1
int 21h ;Write string at DS:DX to standard output
mov ah,1
int 21h ;Read character from standard input into AL
sub al,30h ;al = character - '0'
mov num1,al ;num = character - '0'
mov ah,9
lea dx,str2
int 21h ;Write string at DS:DX to standard output
mov ah,1
int 21h ;Read character from standard input into AL
mov al,2
cmp num1,al ;Is num1 greater than 2?
jg sum ; yes, goto sum
; no
mov ah,9
lea dx,str3
int 21h ;Write string at DS:DX to standard output
jmp exit
sum:
add num1,al ;num1 = num1 + AL = num1 + 2
mov ah,9
lea dx,new
int 21h ;Write string at DS:DX to standard output
mov ah,9
lea dx,num1
int 21h ;Write string at DS:DX to standard output
jmp exit
exit:
我沒有看到實際的問題,我不知道你在編寫什麼語言,我認爲你的文章的格式需要更多的工作。請修復這些問題,以便我們可以幫助您。 – Alexander
我在彙編語言中使用條件語句..我的問題是,它不會比較第一個數字是否大於第二個數字.. –
那麼你有'cmp num1,al'' jg sum'在那裏,所以CPU可能*是*比較的東西。然而,之前的指令是'mov al,2',所以你似乎將'num1'的值與'2'進行比較,這似乎與你希望代碼執行的描述不符(比較第一個數字到第二個數字)。 –