www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - "float" on 3 bytes

reply tsalm <tsalm free.fr> writes:
Hi,

I need to minimize the size of my memory use...
My program uses a big array of float.
My float have a gap of 0.0000001 and 65536.

So i think to store one sort of "float" with :
- an "ushort" to have numbers
- and a "ubyte" to have the number of digit in the decimal portion (or  
something like this...).

What could be the better way for you ?

Thanks in advance for your help,
TSalm
Oct 09 2008
parent reply "Denis Koroskin" <2korden gmail.com> writes:
On Thu, 09 Oct 2008 20:59:17 +0400, tsalm <tsalm free.fr> wrote:

 Hi,

 I need to minimize the size of my memory use...
 My program uses a big array of float.
 My float have a gap of 0.0000001 and 65536.

 So i think to store one sort of "float" with :
 - an "ushort" to have numbers
 - and a "ubyte" to have the number of digit in the decimal portion (or  
 something like this...).

 What could be the better way for you ?

 Thanks in advance for your help,
 TSalm

There are 24- and 16-bit floating point type libraries available in C (google for half-float), these could be easily ported to D.
Oct 10 2008
parent tsalm <tsalm free.fr> writes:
 Hi,

 I need to minimize the size of my memory use...
 My program uses a big array of float.
 My float have a gap of 0.0000001 and 65536.

 So i think to store one sort of "float" with :
 - an "ushort" to have numbers
 - and a "ubyte" to have the number of digit in the decimal portion (or  
 something like this...).

 What could be the better way for you ?

 Thanks in advance for your help,
 TSalm

There are 24- and 16-bit floating point type libraries available in C (google for half-float), these could be easily ported to D.

Interesting. Thanks
Oct 10 2008