ASMB,L,R,C * * **************************************************************** * * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1979. ALL RIGHTS * * * RESERVED. NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, * * * REPRODUCED OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITHOUT * * * THE PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY. * * **************************************************************** * * NAME: PART OF MATH LIBRARY * SOURCE: 24998-18XXX SEE NAM FOR LAST THREE DIGITS * RELOC: PART OF 24998-12001 * PGMR: BG & JTS * HED "FLTDR" - FORTRAN INTERFACE TO .FLTD . NAM FLTDR,7 24998-1X100 REV.2001 790417 * ENT FLTDR EXT .FLTD,.ENTR * * FLTDR PROVIDES A FORTRAN-CALLABLE CONVERSION FROM * DOUBLE INTEGER TO SINGLE-PRECISION (32-BIT) * FLOATING-POINT. * * CALLING SEQUENCE: * * A = FLTDR(X) * * WHERE X IS DECLARED REAL BUT CONTAINS A DOUBLE * INTEGER VALUE. * * OVERFLOW CANNOT OCCUR, BUT PRECISION MAY BE LOST * SINCE SINGLE PRECISION CARRIES ONLY 23 BITS AND * DOUBLE INTEGER HAS 31. EXCESS BITS ARE TRUNCATED, * SO THE VALUE OF THE RESULT IS ALWAYS LESS THAN OR * EQUAL TO THE VALUE OF THE ARGUMENT: IF IT IS NEGATIVE, * THE ABSOLUTE VALUE IS GREATER THAN OR EQUAL TO. SPC 3 FLTDA DEF *-* FLTDR NOP JSB .ENTR COPY ADDRESS. DEF FLTDA DLD FLTDA,I DO OPERATION. JSB .FLTD JMP FLTDR,I EXIT. RESULT IS IN (A,B) * END