Integer Division (unsigned) With Remainder
The following algorithm, the binary version of the famous long division, will divide N by D, placing the quotient in Q and the remainder in R. All values are treated as unsigned integers.]]
if D == 0 then throw DivisionByZeroException end
Q := 0 initialize quotient and remainder to zero
R := 0
for i = n-1...0 do " where n is number of bits " R := R << 1 left-shift R by 1 bit R(0) := N(i) set the least-significant bit of R equal to bit i of the numerator if R >= D then R = R - D Q(i) := 1 end
end
Read more about this topic: Division Algorithm
Famous quotes containing the words division and/or remainder:
“For a small child there is no division between playing and learning; between the things he or she does just for fun and things that are educational. The child learns while living and any part of living that is enjoyable is also play.”
—Penelope Leach (20th century)
“Do not undervalue the headache. While it is at its sharpest it seems a bad investment; but when relief begins, the unexpired remainder is worth $4 a minute.”
—Mark Twain [Samuel Langhorne Clemens] (18351910)