# NEED FAST SIGNED DIVISION on PPLAIN

How may i be able to break a signed division by a constant

into cheaper sequences of adds (and one imul, maybe)

For unsigned division we may use the following

formula:

a/b == (int)(((2^32)+b-1)/b) * (a) / (2^32)

but does it hold for signed division?

can anyone recall michael abrash's code for doing

fast signed division. i guess he had

discussed in the mar 92 issue of Dr dobb's.

• Why don't you use IDIV (signed) or DIV (unsigned)? It takes one clock cycle, which is really fast. On a 90mhz comp, there are 90 million clock cycles per second.

MOV AX, 8

MOV BX, 4

IDIV BX (or DIV BX)

AX now equals 2

• : Why don't you use IDIV (signed) or DIV (unsigned)? It takes one clock cycle, which is really fast. On a 90mhz comp, there are 90 million clock cycles per second.

: MOV AX, 8

: MOV BX, 4

: IDIV BX (or DIV BX)

: AX now equals 2

yeah but all this is good on pII or PIII

i am looking for a PPLAIN(pentium or i586

or whatever you may call it)

speed up.

• I expected some answers to my query.

But it seems readers of this forum are more interested in

DOS & stuffs like that.