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 in the division of the nations of the whole earth he set a ruler over every people; but Israel is the Lords portion: whom, being his firstborn, he nourisheth with discipline, and giving him the light of his love doth not forsake him. Therefore all their works are as the sun before him, and his eyes are continually upon their ways.”
—Apocrypha. Ecclesiasticus 17:17-9.
“What have I gained?
Experience, said Holmes, laughing. Indirectly it may be of value, you know; you have only to put it into words to gain the reputation of being excellent company for the remainder of your existence.”
—Sir Arthur Conan Doyle (18591930)