home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / SIMTEL / HITECH-C / Z80V309.EXE / lha / FLOAT.H < prev    next >
Text File  |  1979-11-30  |  2KB  |  68 lines

  1. /*    Characteristics of floating types */
  2.  
  3. #define    DBL_RADIX    2        /* radix of exponent for a double */
  4. #define    DBL_ROUNDS    1        /* doubles round when converted to int */
  5. #define    FLT_RADIX    2        /* radix of float exponent */
  6. #define    FLT_ROUNDS    1        /* float also rounds to int */
  7.  
  8. #if    z80
  9. #define    FLT_MANT_DIG    24        /* 24 bits in mantissa */
  10. #define    DBL_MANT_DIG    24        /* ditto for double */
  11. #define    DBL_MANT_DIG    24        /* ditto long double */
  12. #define    FLT_EPSILON    -1.192093    /* smallest x, x+1.0 != 1.0 */
  13. #define    DBL_EPSILON    -1.192093    /* smallest x, x+1.0 != 1.0 */
  14. #define    FLT_DIG        6        /* decimal significant digs */
  15. #define    DBL_DIG        6
  16. #define    FLT_MIN_EXP    -62        /* min binary exponent */
  17. #define    DBL_MIN_EXP    -62
  18. #define    FLT_MIN        1.084202e-19    /* smallest floating number */
  19. #define    DBL_MIN        1.084202e-19
  20. #define    FLT_MIN_10_EXP    -18
  21. #define    DBL_MIN_10_EXP    -18
  22. #define    FLT_MAX_EXP    64        /* max binary exponent */
  23. #define    DBL_MAX_EXP    64
  24. #define    FLT_MAX        1.84467e19    /* max floating number */
  25. #define    DBL_MAX        1.84467e19
  26. #define    FLT_MAX_10_EXP    19        /* max decimal exponent */
  27. #define    DBL_MAX_10_EXP    19
  28. #endif    z80
  29.  
  30. #if    i8086 || m68k
  31.  
  32. /*    The 8086 and 68000 use IEEE 32 and 64 bit floats */
  33.  
  34. #define    FLT_RADIX    2
  35. #define    FLT_MANT_DIG    24
  36. #define    FLT_EPSILON    1.19209290e-07
  37. #define    FLT_DIG        6
  38. #define    FLT_MIN_EXP    -125
  39. #define    FLT_MIN        1.17549435e-38
  40. #define    FLT_MIN_10_EXP    -37
  41. #define    FLT_MAX_EXP    128
  42. #define    FLT_MAX        3.40282347e+38
  43. #define    FLT_MAX_10_EXP    38
  44. #define    DBL_MANT_DIG    53
  45. #define    DBL_EPSILON    2.2204460492503131e-16
  46. #define    DBL_DIG        15
  47. #define    DBL_MIN_EXP    -1021
  48. #define    DBL_MIN        2.225073858507201e-308
  49. #define    DBL_MIN_10_EXP    -307
  50. #define    DBL_MAX_EXP    1024
  51. #define    DBL_MAX        1.797693134862316e+308
  52. #define    DBL_MAX_10_EXP    308
  53. #endif    i8086 || m68k
  54.  
  55.  
  56. /*    long double equates to double */
  57.  
  58.  
  59. #define    LDBL_MANT_DIG    DBL_MANT_DIG
  60. #define    LDBL_EPSILON    DBL_EPSILON
  61. #define    LDBL_DIG    DBL_DIG
  62. #define    LDBL_MIN_EXP    DBL_MIN_EXP
  63. #define    LDBL_MIN    DBL_MIN
  64. #define    LDBL_MIN_10_EXP    DBL_MIN_10_EXP
  65. #define    LDBL_MAX_EXP    DBL_MAX_EXP
  66. #define    LDBL_MAX    DBL_MAX
  67. #define    LDBL_MAX_10_EXP    DBL_MAX_10_EXP
  68.