float CT stringification

Fawzi Mohamed fmohamed at mac.com
Thu Jun 5 06:08:47 PDT 2008


On 2008-06-05 14:45:49 +0200, bearophile <bearophileHUGS at lycos.com> said:

> Fawzi Mohamed:
>> I don't think that you really gain something by making the
>> weight value compiletime, just the sparsity structure (number of
>> variables) makes you gain something...
> 
> Right, the gain comes only from not doing the multiplication where the 
> coefficient is 1, and not doing anything where it's zero.
> Still, I'd like to have a CT toString(float).
> 
> Bye,
> bearophile

maybe, if nobody answers, you have to roll your own, and then you can 
contribute it back...
with
real frexp (real value, out int exp);

and then a bit per bit extraction of value using scalbn or ldexp, 
checking >=0, removing the bit and iterating... e even simpler multipy 
with 2**n_mantissa and cast to integer, and you should be able to do 
convert a float in two integers that you can then write out.
one should be careful and check that with denormalized numbers it still works

http://www.dsource.org/projects/tango/docs/current/tango.math.IEEE.html



More information about the Digitalmars-d-learn mailing list