Rockbox.org home
release
dev builds
extras
themes manual
wiki
device status forums
mailing lists
IRC bugs
patches
dev guide



Rockbox mail archive

Subject: Re: Math in Rockbox

Re: Math in Rockbox

From: BlueChip <cs_bluechip_at_webtribe.net>
Date: Wed, 06 Jul 2005 20:01:10 +0100

while (x>0) r = (r<<3)+(r<<1); // r*8 + r*2
                      ^whoops


At 19:52 06/07/2005, you wrote:
>what values of 'x' ? all positive? include 0?
>
>if (x<0) return(0); // cannot handle negative values of x
>if (x>9) return(-1); // result will be > (2^32)-1
>unsigned long r = 1;
>while (x>0) r = (r<<4)+(r<<1); // r*8 + r*2
>return (r);
>
>given you only have 9 possible return values, a lookup table would be
>faster and not THAT much more cost in code-space.
>
>At 16:53 06/07/2005, you wrote:
>>well... If I just think of a q&d solution:
>>
>>long exp10(int x) {
>> long result = 10;
>> while (--x) {
>> result = result * 10;
>> }
>> return result;
>>}
>>
>>I haven't tested this, but it can be something like this. (And I'm sure
>>it's slow as hell for large values of x)
>>
>>Tomas
>>
>>lear_at_algonet.se wrote:
>>
>> >Hi,
>> >
>> >For an upcoming patch, I need some fixed- or floating-point math. Does
>> anyone have
>> >a good fixed-point implementation of pow(10, x) (or exp10(x)), or some
>> hints
>> >on how to implement it? It doesn't need to be particularly fast; small size
>> >is to be preferred actually.
>> >
>> >Or would it be acceptable to bring in the compiler's floating point
>> stuff for
>> >this? The idea is to not put it in a plugin or a codec (though I could put
>> >it in the codec lib, it isn't really the natural place for it :)...
>> >
>> > Magnus
>> >
>> >_______________________________________________
>> >http://cool.haxx.se/mailman/listinfo/rockbox
>> >
>> >
>>
>>_______________________________________________
>>http://cool.haxx.se/mailman/listinfo/rockbox
>
>_______________________________________________
>http://cool.haxx.se/mailman/listinfo/rockbox

_______________________________________________
http://cool.haxx.se/mailman/listinfo/rockbox
Received on 2005-07-06

Page template was last modified "Tue Sep 7 00:00:02 2021" The Rockbox Crew -- Privacy Policy