Re: Simple/Fast Algorithm for binary logarithm in C (on ARM7)



Peter Dickerson schrieb:

I had a need for log of an integer with the result fixed point. For fixed
point input there is just a constant difference. I didn't hugely accurate
results, but the results are better than I needed. Input was signed 32-bit
integer and result was ln(x) as 32-bit fixed point with 24-bit fraction.
log10(x) was then obtained by scaling. There is no particular reason why the
input can't be unsigned.

However, the method requires a 256-entry 32-bit int table, a 256-entry byte
table and one integer divide :-(

I can't give out the source code because of copyright constraints but I'm
happy to explain the algorithm.

So, please start the explanation. :-)

Tilmann

--
http://www.autometer.de - Elektronik nach Maß.
.