[comp.org.ieee] IEEE Standard for Floating Point

baalke@mars.jpl.nasa.gov (Ron Baalke) (10/06/89)

Does anybody know where I can get the format for the IEEE standard
for floating point numbers?

montnaro@sprite.crd.ge.com (Skip Montanaro) (10/07/89)

Try the Apple SANE manual(s).



--
Skip Montanaro (montanaro@crdgw1.ge.com)

campbell@redsox.bsw.com (Larry Campbell) (10/07/89)

In article <1861@jato.Jpl.Nasa.Gov> baalke@mars.jpl.nasa.gov (Ron Baalke) writes:
-Does anybody know where I can get the format for the IEEE standard
-for floating point numbers?

Uh, have you tried the IEEE?
-- 
Larry Campbell                          The Boston Software Works, Inc.
campbell@bsw.com                        120 Fulton Street
wjh12!redsox!campbell                   Boston, MA 02146

johnl@esegue.segue.boston.ma.us (John R. Levine) (10/08/89)

In article <1861@jato.Jpl.Nasa.Gov> baalke@mars.jpl.nasa.gov (Ron Baalke) writes:
>Does anybody know where I can get the format for the IEEE standard
>for floating point numbers?

The IEEE sells their publications directly.  Contact:

IEEE Publications Office
10662 Los Vaqueros Circle
PO Box 3014
Los Alamitos CA 90720-1264
Phone +1 714 821 8380
Fax   +1 714 821 4010

As I recall, the P754 floating point standard cost me about $10.
-- 
John R. Levine, Segue Software, POB 349, Cambridge MA 02238, +1 617 492 3869
johnl@esegue.segue.boston.ma.us, {ima|lotus}!esegue!johnl, Levine@YALE.edu
Massachusetts has 64 licensed drivers who are over 100 years old.  -The Globe

decot@hpisod2.HP.COM (Dave Decot) (10/08/89)

IEEE Standard for Binary Floating-Point Arithmetic, ANSI/IEEE Std 754-1985.

To quote from a draft version (presumably the same as the final version):

	Numbers in the single and double formats are composed of three fields:

		A 1-bit sign s.
		A biased exponent e = E + bias
		A fraction f = .b b ....b
				 1 2     p-1

	...

	A 32-bit single format number X is divided as shown in Figure 1. The 
	value v of X is inferred from its constituent fields thus:

	(1) If e = 255 and f != 0, then v is NaN [not-a-number] regardless of
	    s.
	(2) If e = 255 and f = 0, then v = (-1)^s * infinity.
	(3) If 0 < e < 255, then v = (-1)^s * 2^(e-127) * (1.f).
	(4) If e = 0 and f != 0, then v = (-1)^s * 2^(-126) * (0.f)
	    (denormalized numbers).
	(5) If e = 0 and f = 0, then v = (-1)^s * 0 (zero).

	Figure 1. Single Format

	 1    8            23		...widths	
	+-+--------+----------------+
	|s|   e    |        f       |
	+-+--------+----------------+
	   msb  lsb msb          lsb	...order
	
	"msb" means "most significant bit"
	"lsb" means "least significant bit"

	...

	A 64-bit double format number X is divided as shown in Figure 2. The 
	value v of X is inferred from its constituent fields thus:

	(1) If e = 2047 and f != 0, then v is NaN [not-a-number] regardless of
	    s.
	(2) If e = 2047 and f = 0, then v = (-1)^s * infinity.
	(3) If 0 < e < 2047, then v = (-1)^s * 2^(e-1023) * (1.f).
	(4) If e = 0 and f != 0, then v = (-1)^s * 2^(-1022) * (0.f)
	    (denormalized numbers).
	(5) If e = 0 and f = 0, then v = (-1)^s * 0 (zero).

	Figure 2. Double Format

	 1    11            52		...widths	
	+-+--------+----------------+
	|s|   e    |        f       |
	+-+--------+----------------+
	   msb  lsb msb          lsb	...order

(I've used "^" to signify exponentiation and "*" to signify multiplication)

Hope this helps!

pozar@hoptoad.uucp (Tim Pozar) (10/10/89)

In article <1861@jato.Jpl.Nasa.Gov> baalke@mars.jpl.nasa.gov (Ron Baalke) writes:
>Does anybody know where I can get the format for the IEEE standard
>for floating point numbers?

    One place I've seen it described was in the MicroSoft C
(5.1) manuals.

	Tim

-- 
Tim Pozar    Try also...
Internet: pozar@toad.com   
    Fido:  1:125/555
  PaBell:  (415) 788-3904
  USNail:  KKSF / 77 Maiden Lane /  San Francisco CA 94108