FP_shift.h 986 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. /*
  2. (c) copyright 1988 by the Vrije Universiteit, Amsterdam, The Netherlands.
  3. See the copyright notice in the ACK home directory, in the file "Copyright".
  4. */
  5. /* $Id$ */
  6. /*
  7. include file for floating point package
  8. */
  9. # define CARRYBIT 0x80000000L
  10. # define NORMBIT 0x80000000L
  11. # define EXP_STORE 16
  12. /* parameters for Single Precision */
  13. #define SGL_EXPSHIFT 7
  14. #define SGL_M1LEFT 8
  15. #define SGL_ZERO 0xffffff80L
  16. #define SGL_EXACT 0xff
  17. #define SGL_RUNPACK SGL_M1LEFT
  18. #define SGL_ROUNDUP 0x80
  19. #define SGL_CARRYOUT 0x01000000L
  20. #define SGL_MASK 0x007fffffL
  21. /* parameters for Double Precision */
  22. /* used in extend.c */
  23. #define DBL_EXPSHIFT 4
  24. #define DBL_M1LEFT 11
  25. #define DBL_RPACK (32-DBL_M1LEFT)
  26. #define DBL_LPACK DBL_M1LEFT
  27. /* used in compact.c */
  28. #define DBL_ZERO 0xfffffd00L
  29. #define DBL_EXACT 0x7ff
  30. #define DBL_RUNPACK DBL_M1LEFT
  31. #define DBL_LUNPACK (32-DBL_RUNPACK)
  32. #define DBL_ROUNDUP 0x400
  33. #define DBL_CARRYOUT 0x00200000L
  34. #define DBL_MASK 0x000fffffL