2013-03-02 50 views
1

我正在做一個學校的計算器項目和所有的東西都很好, ,但分而治之(%)給我一個「劃分溢出」錯誤,我該如何解決它?劃分過流ASM

對於全碼:http://pastebin.com/a9cuL0LJ

鴻溝是線158

國防部是166

兩個Num1Int和Num2Int是數字0-255之間

或者:

DivideDo: 
push ax 
mov ax , word ptr Num1Int 
div Num2Int 
mov ResultInt , al 
pop ax 
ret 

ModDo: 
push ax 
mov ax , word ptr Num1Int 
div Num2Int 
mov ResultInt , ah 
pop ax 
ret 

回答

0

一個明顯的問題是,雖然Num1Int寬度爲8位:

Num1Int db ? 

你把它當作好像它是16個位寬:

mov ax , word ptr Num1Int