ehead.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. /* Include file for extended precision arithmetic programs.
  2. */
  3. /* Number of 16 bit words in external x type format */
  4. #define NE 6
  5. /* Number of 16 bit words in internal format */
  6. #define NI (NE+3)
  7. /* Array offset to exponent */
  8. #define E 1
  9. /* Array offset to high guard word */
  10. #define M 2
  11. /* Number of bits of precision */
  12. #define NBITS ((NI-4)*16)
  13. /* Maximum number of decimal digits in ASCII conversion
  14. * = NBITS*log10(2)
  15. */
  16. #define NDEC (NBITS*8/27)
  17. /* The exponent of 1.0 */
  18. #define EXONE (0x3fff)
  19. void eadd(), esub(), emul(), ediv();
  20. int ecmp(), enormlz(), eshift();
  21. void eshup1(), eshup8(), eshup6(), eshdn1(), eshdn8(), eshdn6();
  22. void eabs(), eneg(), emov(), eclear(), einfin(), efloor();
  23. void eldexp(), efrexp(), eifrac(), ltoe();
  24. void esqrt(), elog(), eexp(), etanh(), epow();
  25. void asctoe(), asctoe24(), asctoe53(), asctoe64();
  26. void etoasc(), e24toasc(), e53toasc(), e64toasc();
  27. void etoe64(), etoe53(), etoe24(), e64toe(), e53toe(), e24toe();
  28. void mtherr();
  29. extern unsigned short ezero[], ehalf[], eone[], etwo[];
  30. extern unsigned short elog2[], esqrt2[];
  31. /* by Stephen L. Moshier. */