From mboxrd@z Thu Jan 1 00:00:00 1970 MIME-Version: 1.0 In-Reply-To: <0A6636567CF044608F1AEB6AEEAA4AEB@mail2world.com> References: <0A6636567CF044608F1AEB6AEEAA4AEB@mail2world.com> Date: Wed, 20 May 2009 14:38:04 +0200 Message-ID: <138575260905200538v274428c1g744b1c51b0909f8@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: quoted-printable Subject: Re: [9fans] plan 9 floating point representation Topicbox-Message-UUID: fb72f4b0-ead4-11e9-9d60-3106f5b1d025 thanks, I'll study it with care. Saludos 2009/5/20, Jonas Amoson : > > Hello Hugo, > > > Done some experiments with the indivudual > bits in Lunix, and would be very surprised > if it is not handled the same under Plan 9, > given the same hardware architecture. > > The exponent is stored in base 2, but What > might be a bit confusing, is that it is not > stored using two's complement, but rather > using a bias. If you have an exponent of 8 > bits (in a 32-bit IEEE float) an exponent of > zero is represented by '10000000' or 127. > Simply add the desired exponent, whether pos > or neg. -1 will be 126, +1 will be 128. > > This link explains the whole thing in more detail: > http://steve.hollasch.net/cgindex/coding/ieeefloat.html > > /jonas > > <-----Ursprungligt Meddelande-----> > From: hugo rivera [uair00@gmail.com] > Sent: 20/5/2009 11:50:51 AM > To: 9fans@9fans.net > Subject: [9fans] plan 9 floating point representation > > 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 > > . > > > > > _______________________________________________________________ > Eniro Supers=C3=B6k - =C3=A4r vad det heter > > --=20 Hugo