Zero is a special case. It is encoded as a zero biased exponent (eb=0):
00xxxx (xxxx can have any value)
eb=0
e=-127
As your number gets closer and closer to zero, the exponent is getting
smaller and smaller until it reaches e=-127 (or eb=0), which is zero.
There is another special case, which is ignored in Microchip's
routines (according to AN575) when eb=255, which means infinity.
So, the range for exponent can be either -126..128 (ignoring Inf) or
-126..127 (using Inf). But MPLAB displays the case of eb=255 as zero
(at least in version 5.00).
Nikolai
---- Original Message ----
From: Thomas Robert de Massy <spam_OUTtomasdTakeThisOuTAXESS.COM>
Sent: Sunday, March 18, 2001 22:34:20
To: .....PICLISTKILLspam@spam@MITVMA.MIT.EDU
Subj: Microship 24bit Floating point format question
{Quote hidden}> Hi,
> I'm converting some numbers to Microship's 32 & 24bits floating point
> format (Microship application notes AN575 IEEE 754 compliant floating point
> routines) but I have problems converting the zero number, I know it should
> be a denormalized number but I'm not able to find the correct answer.
> converting 1 to 24bits I get :
> e = 0
> eb = 7F
> f = 0000
> 1 = 7F0000
> and converting 0
> e = 0
> eb = 7f
> f = 0000
> 0 = 7f0000
> what's the correct answer ? can you explain ?
> thanks in advance
> --
>
http://www.piclist.com hint: PICList Posts must start with ONE topic:
> [PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads
--
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics