[comp.arch] Need info on IEEE quad format

shankar@hpclscu.HP.COM (Shankar Unni) (09/09/88)

I need some info on IEEE floating point representation limits to construct
a <float.h> file for ANSI C. I already have the info for single and double
floats:

    #define	FLT_RADIX	2
    #define	FLT_ROUNDS	1   /* sort of: *.5 rounds -> nearest EVEN */

    #define	FLT_MANT_DIG	24
    #define	FLT_EPSILON	1.19209290E-07
    #define	FLT_DIG		6
    #define	FLT_MIN_EXP	-126
    #define	FLT_MIN		1.17549435E-38
    #define	FLT_MIN_10_EXP	-37
    #define	FLT_MAX_EXP	127
    #define	FLT_MAX		3.40282347E+38
    #define	FLT_MAX_10_EXP	38

    #define	DBL_MANT_DIG	53
    #define	DBL_EPSILON	2.2204460492503131E-16
    #define	DBL_DIG		15
    #define	DBL_MIN_EXP	-1022
    #define	DBL_MIN		2.225073858507201E-308
    #define	DBL_MIN_10_EXP	-307
    #define	DBL_MAX_EXP	1023
    #define	DBL_MAX		1.797693134862315e+308
    #define	DBL_MAX_10_EXP	308

The information I need is (for quad-precision (128-bit) floats):

    #define	LDBL_MANT_DIG	113
    #define	LDBL_EPSILON	??	/* 1.0 + EPSILON != 1.0 */
    #define	LDBL_DIG	??	/* decimal digits of precision */
    #define	LDBL_MIN_EXP	-16382
    #define	LDBL_MIN	??	/* smallest *normalized* quad */
    #define	LDBL_MIN_10_EXP ??	/* about -4930, no? */
    #define	LDBL_MAX_EXP	16383
    #define	LDBL_MAX	??	/* largest quad */
    #define	LDBL_MAX_10_EXP ??	/* ~~ 4931? */

The magnitude of the smallest de-normalized quad would also be useful...

Could some kind soul *VERIFY* the above figures that I've filled in, and
fill in those that I haven't?
--
Many many thanx in advance,
-----------------------------------------------------------------------------
Shankar Unni				     allegra)
Mail: shankar@hpda.HP.COM		UUCP: ucbvax)!hplabs!hpda!shankar
AT&T: (408) 447-5797			      decwrl)
-----------------------------------------------------------------------------