From mboxrd@z Thu Jan 1 00:00:00 1970 MIME-Version: 1.0 Date: Wed, 20 May 2009 11:49:51 +0200 Message-ID: <138575260905200249u4a9b7baeyf27c6f3ead86a2@mail.gmail.com> From: hugo rivera To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: [9fans] plan 9 floating point representation Topicbox-Message-UUID: fb2c8782-ead4-11e9-9d60-3106f5b1d025 Hi, I am learning a bit about floating point representation and I am wondering about how plan 9 does this. According to IEEE 754 (I think) the convention used by C for single precision floating point numbers is to use 24 of the 32 bits available for the significand and 8 bits for the exponent. It seems to me that plan 9 follows this convention but I am still kind of puzzled about the base of the exponent. I've been experimenting (on a 386) a while and it looks like a base 4 to me, which is kind of strange, since I was expecting a base 2 or 10. I think I got something wrong, but I would appreciate if someone can explain this to me to have a better idea of how this works. It looks to me that this stuff is very machine dependent (or language?), is it? The point of all this is to classify raw data (4 byte length) according to their magnitude, I don't really care about the significant. This is just an exercise for me, since there are other easier ways to do it. Saludos -- Hugo