Original version: Mon Jan 19 12:41:55 2026


CORDIC algorithms

CORDIC (COordinate Rotation DIgital Computer) algorithms provide a general way to compute several different mathematical functions from a common loop over significand bits, with different results depending on starting values of a few variables, plus a selector variable in the loop, and two precomputed tables of constants. The output functions include multiply, divide, square root, exponential, logarithm, hyperbolic and trigonometric functions, and inverse hyperbolic and inverse trigonometric functions.

CORDIC methods have historically been implemented in hardware, using fixed-point arithmetic, but this site supplies a report on their use in binary and decimal floating-point arithmetic, with portable sample code in C that can be used to test the algorithms at other sites.

The report is available here, and the sample code is available here.

A large bibliography of more than 1600 publications about CORDIC methods has been developed as part of this work: it is available in BibTeX form here and in a derived HTML form with similar appearance, and live hyperlinks, here.