Alexander Malmberg wrote:

David Ayers wrote:
[snip]

Hmm, I'll take your word for it. I just recalled back in the dark ages
someone told me (or I read it somewhere) that 25.1 would somehow be
represented as 2.51 * 10^1 and that a float or double only stored the
mantissa and exponent which shouldn't result in any discrepancies here.

It does, but in base 2, and the fraction 25.1/16 can't be represented
exactly in base 2; you get 2^4 * 1.10010 0011 0011 0011 ...

Thanks,

and verified with OPENSTEP 4.2. The "patch" is withdrawn. I apparently forgot the part about base for floats and doubles also being 2. But I guess it is probably the only way to handle these numbers somehow efficiently for (floating point) processors.

Thanks for the lesson :-)

Cheers,
Dave





_______________________________________________
Bug-gnustep mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/bug-gnustep


Reply via email to