0

hi... ive tried alot of things already...and i know what the problem is, just not sure how to fix it.
ive isolated it to this part of the code thats giving me problems... and i think that its because the register cant hold the number (hence the overflow error)

MOV AX, number		;for division
	MOV CX, 2d		;''
	DIV CX			; AX (number) / CX (2) = n/2 in ax
	INC AX			;so now its n/2 +1
	MOV countmax, AX	;store max var.

number will be from 100-999

since my div skills arent that great...what is the best way to divide something? my book isnt very helpful.
thanks
-g

2
Contributors
2
Replies
4
Views
12 Years
Discussion Span
Last Post by ghostfacelz
0

when we do "div",there some rules we must abide by.
1.8 digits "div",like
mov bh,1
mov ax,11
div bh
send the quotient to al, and send the arithmetical complimentremainder to ah
2. 16 digits "div",like
mov bx,11
mov ax,3223
div bx
send the quotient to ax, and send the arithmetical complimentremainder to dx
so, if the quotient lager than al in 8 digits "div" and larger than ax in 16 digits "div", system will call 0 interrupt, and display "Divide overflow"

0

right... i understand all of that.. thats the problem that i am having...
but how would you go about doing the division then....

This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.