Re: [討論] 關於除法DIV的一些問題
小弟這次加上了,辨識負號的功能,
可是結果只有輸入正的才會對,輸入負的(一正一負OR兩個都負數)就會錯,
或是無法繼續執行。
拜託各位大大解惑
TITLE MASM Template (main.asm)
; Description:
;
; Revision date:
INCLUDE Irvine32.inc
.data
I1 DWORD ?
I2 DWORD ?
Str1 Byte "Input the first value",0
Str2 Byte "Input the second value",0
.code
main PROC
MOV EDX,OFFSET str1
CALL WriteString
CALL ReadDec
MOV I1,EAX
CMP I1,0 // <-------比較是否為負數
JG L3
NEG I1 // <-------如果是就換為正的
L3: MOV EDX,OFFSET str2
CALL WriteString
CALL ReadDec
MOV I2,EAX
CMP I2,0 // <-------比較是否為負數
JG L4
NEG I2 // <-------如果是就會為正的
L4: PUSH I1
PUSH I2
CALL gcdrecursive
CALL WriteDec
EXIT
main ENDP
gcdrecursive PROC
PUSH EBP
MOV EBP,ESP
SUB ESP,4
MOV EBX,[EBP+8]
MOV EAX,[EBP+12]
MOV EDX,0
DIV EBX
MOV EAX,EBX
MOV EBX,EDX
CMP EBX,0
JE L2
JMP L1
L1:PUSH EAX
PUSH EBX
CALL gcdrecursive
L2:MOV ESP,EBP
POP EBP
RET 8
gcdrecursive ENDP
END main
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.166.218.13
推
01/09 18:47, , 1F
01/09 18:47, 1F
推
01/09 18:50, , 2F
01/09 18:50, 2F
推
01/09 19:07, , 3F
01/09 19:07, 3F
→
01/09 19:09, , 4F
01/09 19:09, 4F
→
01/09 20:46, , 5F
01/09 20:46, 5F
推
01/09 21:39, , 6F
01/09 21:39, 6F
推
01/10 00:29, , 7F
01/10 00:29, 7F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 3 篇):
ASM 近期熱門文章
PTT數位生活區 即時熱門文章