Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Does anyone know any available reference to learn how works CORDIC algorithm to implement a division? Thank you!

share|cite|improve this question
CORDIC algorithms are attractive for handheld calculator design because they avoid multiplications and divisions in computing elementary transcendental functions. I suppose you could use CORDIC to compute the logarithms of two operands, subtract them, and take the exponential as a way to do the division, but this seems an elaborate route to say the least. Perhaps the closest thing in spirit to what you are asking for is division by repeated subtraction, an approach that predates CORDIC. If it interests you I could elaborate that into an Answer. – hardmath Jan 29 '11 at 13:40
@hardfmath: Yes I am interested in knowing how it works, please explain me. Thank you. – Peterstone Jan 29 '11 at 14:16
There is a nice article on some MAA periodic wich I can't remember now. But you could look there. – Poirot Jan 29 '11 at 22:25
up vote 3 down vote accepted

CORDIC stands for "coordinate rotation digital computer" and was described as a method for computing trigonometric functions [PDF] by Jack E. Volder in 1959. Later the method was generalized by John S. Walther at Hewlett-Packard to other elementary transcendental functions and operations useful in pocket calculators. The advantage is simplicity of hardware required to perform additions, subtractions, bit-shifts, and table lookups (avoiding the need for hardware multiplication and division).

Applied to performing a CORDIC division, these ideas amount to producing the bits (or digits) of the quotient one at a time by aligning the divisor "under" the dividend and subtracting until what remains in the dividend is too small to allow a further subtraction. It is essentially the same as the long division algorithm taught in elementary school, especially if applied to binary numbers (where at a given position in the quotient, the divisor goes either 1 time or 0 times). Cases where the divisor is zero must be trapped as exceptions. If the divisor is negative, its sign and that of the dividend should both be changed (so that the algorithm is applied with a positive divisor).

See the illustrations here for Binary Division by Shift and Subtract, including a Java applet that demonstrates the steps.

share|cite|improve this answer

See Calculator algorithms

share|cite|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.