home *** CD-ROM | disk | FTP | other *** search
- /************** 8051 FLOATING-POINT ARITHMETIC LIBRARY *******************
- VER 1.00 --- 12-19-1989
-
-
- ********************FORMAT OF DOUBLE FLOAT POINT NUMBER *****************
-
-
- | SIGN | EXPONENT | FRACTION |
- 63 52 0
-
- WHERE:
- SIGN: SIGN OF THE BOUBLE (BIT 63,LENGTH=1 BIT)
- EXPONENT:EXPONENT OF THE DOUBLE (BIT52-BIT62,LENGTH=11 BITS)
- FRACTION:FRACTION OF THE DOUBLE (BIT0-BIT51,LENGTH=52 BITS)
-
- ************************************************************************* /
- DECLARE
- FP_OP0(8) BYTE EXTERNAL,
- FP_OP1(8) BYTE EXTERNAL,
- FP_ACC(8) BYTE EXTERNAL,
- FP_CY BIT EXTERNAL,
- FP_Z BIT EXTERNAL,
- FP_OV BIT EXTERNAL,
- FP_DV BIT EXTERNAL,
- FP_SN0 BIT EXTERNAL,
- FP_SN1 BIT EXTERNAL,
- FP_SN BIT EXTERNAL;
-
- DECLARE
- M_MAIN LITERALLY '0',
- M_CONST LITERALLY '1',
- M_AUXI LITERALLY '2',
-
- D_BYTE LITERALLY '0',
- D_SINT LITERALLY '1',
- D_WORD LITERALLY '2',
- D_INT LITERALLY '3',
- D_DWORD LITERALLY '4',
- D_LINT LITERALLY '5',
- D_FLOAT LITERALLY '6',
- D_DOUBLE LITERALLY '7',
- D_LONG LITERALLY '8',
- D_DATE LITERALLY '9',
- D_STR LITERALLY '10';
-
- FP_ADD: PROCEDURE EXTERNAL; /*FP_OP0+FP_OP1->FP_ACC*/
- END FP_ADD;
-
- FP_SUB: PROCEDURE EXTERNAL; /*FP_OP0-FP_OP1->FP_ACC*/
- END FP_SUB;
-
- FP_MUL: PROCEDURE EXTERNAL; /*FP_OP0*FP_OP1->FP_ACC*/
- END FP_MUL;
-
- FP_DIV: PROCEDURE EXTERNAL; /*FP_OP0/FP_OP1->FP_ACC*/
- END FP_DIV;
-
- FP_BTOF: PROCEDURE EXTERNAL;
- END FP_BTOF;
-
- FP_WTOF: PROCEDURE EXTERNAL;
- END FP_WTOF;
-
- FP_DWTOF: PROCEDURE EXTERNAL;
- END FP_DWTOF;
-
- FP_PTOD: PROCEDURE EXTERNAL;
- END FP_PTOD;
-
- FP_COMP: PROCEDURE EXTERNAL;
- END FP_COMP;
-
- FP_ACCCLR: PROCEDURE EXTERNAL;
- END FP_ACCCLR;
-
- FP_RLC: PROCEDURE(PTR,BYTE_LEN,BIT_LEN) EXTERNAL;
- DECLARE (PTR,BYTE_LEN,BIT_LEN) BYTE;
- END FP_RLC;
-
- FP_RRC: PROCEDURE(PTR,BYTE_LEN,BIT_LEN) EXTERNAL;
- DECLARE (PTR,BYTE_LEN,BIT_LEN) BYTE;
- END FP_RRC;
-
- FP_TZ: PROCEDURE(PTR) EXTERNAL;
- DECLARE PTR BYTE;
- END FP_TZ;
-