34
35
36
37#include "implicit_f.inc"
38
39
40
41
43 . y
44
45
46
47#include "chrasc_c.inc"
48
49
50
51 INTEGER IEXP, ISE, ISM, MANT, MANT1, MANT2, MANT3, IS, ,
52 . MANT12, MANT21, MANT22, MANT31, MANT32
53
55 . x, a, xman, p99
56
57 p99 = zep999ep31
58 x=y
61 a=abs(x)
62 IF(a<onep001em32)THEN
64 RETURN
65 ENDIF
66
67 iexp=log10(a)
68 ise=
max(0,-isign(1,iexp))
69 ism=sign(one,x)
71 xman =a*10.**(-iexp)
72 xman =xman*1000000000.
73 IF(xman>=1000000000.)THEN
74 xman=xman/10.
75 iexp=iexp+1
76 ENDIF
77 mant =xman
78 IF(mant>=1000000000)THEN
79 mant=mant/10
80 iexp=iexp+1
81 ENDIF
82 iexp=iabs(iexp)
83
84 mant1=mant/1000000
85 mant=mant-1000000*mant1
86 mant2=mant/1000
87 mant3=mant-1000*mant2
88 is=2*ism+ise
89
90 mant11=mant1/32
91 mant12=mant1-32*mant11
92 mant21=mant2/32
93 mant22=mant2-32*mant21
94 mant31=mant3/32
95 mant32=mant3-32*mant31
96
99 strr(3:3)=codas(mant11)
100 strr(4:4)=codas(mant12)
101 strr(5:5)=codas(mant21)
102 strr(6:6)=codas(mant22)
103 strr(7:7)=codas(mant31)
104 strr(8:8)=codas(mant32)
105
106 RETURN