DataMuseum.dk

Presents historical artifacts from the history of:

RegneCentralen GIER Computer

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about RegneCentralen GIER Computer

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦15e699bf3⟧ Bits:30000728 GIER ALGOL III Dobbeltpræcisionsaritmetik, 8-hole paper tape

    Length: 53173 (0xcfb5)
    Description: Bits:30000728 GIER ALGOL III Dobbeltpræcisionsaritmetik
    Types: 8-hole paper tape
    Notes: Gier Text, Has10

GIER Text (HTML)

[JZ 20.12.1965]
b k=c60+e70, i=10, a5, b2 _
[assign(a,b): ]
b: ncn (c47) t3 ; if number of param|2 __ =
ps 15 ,hh c55 ; then alarm(|<param|) ____ < >
ps (c46) ,pm s1 ; M:=description(a)
hs c22 ; goto take formal ____
pm c36 ,ps (c46) ; gm s1 ,pm s2 ; formal[1]:=UA; M:=description(b)
grn 1c37 ,hs c22 ; UV1:=0;goto take formal ____
ps (c46) ,ps (s1) ; s:=adr(a) pp (c36) ,arn p ; R:=b gr s ,pm p1 ; a:=b; M:=b1 gm s1 ,ps (c46) ; a1:=b1; s:=last used qq (c46) t1 ; last used:=last used+1
gr c37 ,hv ra3 ; UV:=a; goto exit ____
[double abs(a): ]
b1: ncn (c47) t2 ; if number of param|1 __ =
ps 15 ,hh c55 ; then alarm(|<param|) ____ < >
ps (c46) ,pm s1 ; M:=description(a)
grn 1c37 ,hs c22 ; UV1:=0; goto take formal ____
ps (c36) ,arnf s ; R:=mantissa(head(a)); M:=exp(a)
hv ra LT ; if a<0 then goto minus __ ____ ____
a4: pm s ,gm c37 ; E: UV:=a pm s1 ,gm 1c37 ; UV1:=b
ps (c46) ,hv c51 ; s:=last used; goto RS ____
[minus(a): ]
b2: ncn (c47) t2 ; if number of param|1 __ =
ps 15 ,hh c55 ; then alarm(|<param|) ____ < >
ps (c46) ,pm s1 ; M:=description(a)
grn 1c37 ,hs c22 ; UV1:=0; goto take formal ____
ps (c36) ,arnf s ; R:=mantissa(head(a)); M:=exp(a)
hh ra4 X LZ ; if a=0 then goto E __ ____ ____
a: gr c68 X ; minus: save head of mantissa of a ga c47 ,arn s1 ; save exponent; R:=tail of a mt r2 ,tl -39 ; M:=-tail; R39:=mente sr c68 ,nl ra1 ; R:=mente-head of mantissa tl -10 ,gr c37 ; normalize float.; UV:=R arn c47 ,ps (c46) ; s:=last used
a1: ar _ D ITA t10 ; calculate exponent of the result 0
grn c37 XV LO ; if exp<-512 ∨ exp>511 then __ ____
ga c37 V ; begin UV:=M:=0 _____
hv 0 NTA ; if exp>511 then alarm(|<spill|) end else __ ____ < > ___ ____
a3: gm 1c37 ,hv c51 ; UV[0-9]:=exp; UV1:=M; goto RS ____
b k=e90, i=0 _
d i=e89, b1=b1-b, b2=b2-b _
qq 144.9+c60.19
tassign; _
qq 144.9+c60.19+b1.29
tdoubleabs; _
qq 144.9+c60.19+b2.29
tminus; _
d a5=e68+e68+e68+e68 _
d e71=e71+a5-e68, e72=e72+e68+e68 _
d e89=e89+a5+a5 _
e _
d c60=c60+e68 _
e _
[JZ 20.12.1965]
b k=c60+e70,i=10,b2 _
[add(a,b): ]
ncn (c47) t3 ; if number of parameters|2 __ =
ps 15 ,hh c55 ; then alarm(|<param|) ____ < >
ps (c46) ,pm s1 ; M:=description(a)
grn 1c37 ,hs c22 ; UV1:=0; goto take formal ____
pm (c36) ,ps (c46) ; gm s1 ,is (c36) ; formal[1]:=a pm s1 X ; pm s2 ,gr s2 ; M:=description(b); formal[2]:=a1
grn 1c37 ,hs c22 ; UV1:=0; goto take formal ____
ps (c46) ,pp (c36) ; s:=addr(a)-1; p:=addr(b) pp p-1 ; p:=p-1 arnf p1 X IZB ; ga c47 ,gm c54 ; c47[0-9]:=expb; loc[c54]:=b arnf s1 X IZA ; sr (c47)D ITB ; Raddr:=expa-expb
ga c47 LZB ; if b=0 then c47[0-9]:=expa __ ____
mt -1 D NTB ; if expa<expb then Raddr:=Raddr⨯(-1) __ ____
ar 68 D ITA ; Raddr:=Raddr+68; TA:=abs(expa-expb)>68 ga rb ,arn s1 ; b[0-9]:= -abs(expa-expb)+68
ps p XV LTB ; if expa_expb then begin x:=a; y:=b; x1:=a1 __ > ____ _____
ga c47 V NZC ; y1:=b1; if a|0∧b|0 then c47[0-9]:= expa __ = = ____
; end else begin ___ ____ _____
pp (c46) V LTB ; x:=b;y:=a; x1:=b1; y1:=a1 end ___
arn c54 ,gm c54 ; loc[c54]:=x pm p2 ,pp (c47) ; M:=y1; R:=y; p:=resulting exponent (nearly) qq V NTA ;
tln -39 V NZC ; if TA∧a|0∧b|0 then R:=M:=y:=y1:=0 else __ = = ____ ____
b: tl _ NZC t-68 ; shift to same exponent 0
gr c68 X ; ar s2 ,tl -39 ; M:=y1+x1 ar c54 ,ar c68 ; R:=mente+x+y nl rb1 ,tl -10 ; normalize float. gr c37 ,ps (c46) ; UV:=head of the result; s:=last used qq (c46) t1 ; last used:=last used+1
b1: arn p_ D NZ t10 ; if result|0 then calculate exponent 0 __ = ____
ga c37 V NO ; if exp_-512∧exp<512 then set exponent in UVad __ > ____
dr
grn c37 XV LT ; else if exp<0 then UV:=M:=0 ____ __ ____
hv 0 LO ; if exp>511 then alarm(|<spill|) __ ____ < >
gm 1c37 ,hv c51 ; UV1:=M; goto RS ____
b k=e90,i=0 _
d i=e89 _
qq 144.9+c60.19
t add; _
d e71=e71+e68, e89=e89+e68+e68 _
e _
d c60=c60+e68 _
e _
[JZ 20.12.1965]
b k=c60+e70,i=10,b2 _
[sub(a,b): ]
ncn (c47) t3 ; if number of parameters|2 __ =
ps 15 ,hh c55 ; then alarm(|<param|) ____ < >
ps (c46) ,pm s2 ; M:=description(b)
grn 1c37 ,hs c22 ; UV1:=0; goto take formal ____
ps (c36) ,pm s1 ; ps (c46) ,gm s2 ; formal[2]:=b1 pm (c36) X ; pm s1 ,gr s1 ; M:=description(a); formal[1]:=b
grn 1c37 ,hs c22 ; UV1:=0; goto take formal ____
pp (c46) ,ps (c36) ; s:=addr(a); p:=addr(b)-1 arnf p1 X IZB ; ga c47 ,gm c68 ; c47[0-9]:=expb ps s-1 ,srn p2 ; tl -39 ,sr c68 ; gr c54 ,gm p2 ; loc[c54]:= -b; M:= -b arnf s1 X IZA ; sr (c47)D ITB ; Raddr:=expa-expb
ga c47 LZB ; if b=0 then c47[0-9]:=expa __ ____
mt -1 D NTB ; if expa<expb then Raddr:=Raddr⨯(-1) __ ____
ar 68 D ITA ; Raddr:=Raddr+68; TA:=abs(expa-expb)>68 ga rb ,arn s1 ; b[0-9]:= -abs(expa-expb)+68
pp s XV LTB ; if expa_expb then x:=a; y:=-b; x1=a1 __ > ____
ga c47 V NZC ; y1:=-b1; if a|0∧b|0 then c47[0-9]:= expa __ = = ____
; end else begin ___ ____ _____
ps (c46) V LTB ; x:=-b;y:=a; x1:=-b1; y1:=a1 end ___
arn c54 ,gm c54 ; loc[c54]:=x pm p2 ,pp (c47) ; M:=y1; R:=y; p:=resulting exponent (nearly)
qq V NTA ; if TA∧a|0∧b|0 then R:=M:=y:=y1:=0 else __ = = ____ ____
tln -39 V NZC ;
b: tl _ NZC t-68 ; shift to same exponent 0
gr c68 X ; ar s2 ,tl -39 ; M:=y1+x1 ar c54 ,ar c68 ; R:=mente+x+y nl rb1 ,tl -10 ; normalize float. gr c37 ,ps (c46) ; UV:=head of the result; s:=last used qq (c46) t1 ; last used:=last used+1
b1: arn p_ D NZ t10 ; if result|0 then calculate exponent 0 __ = ____
ga c37 V NO ; if exp_-512∧exp<512 then set exponent in UVad __ > ____
dr
grn c37 XV LT ; else if exp<0 then UV:=M:=0 ____ __ ____
hv 0 LO ; if exp>511 then alarm(|<spill|) __ ____ < >
gm 1c37 ,hv c51 ; UV1:=M; goto RS ____
b k=e90,i=0 _
d i=e89 _
qq 144.9+c60.19
t sub; _
d e71=e71+e68, e89=e89+e68+e68 _
e _
d c60=c60+e68 _
e _
[JZ 20.12.1965]
b k=c60+e70,i=10,a2 _
[mult(a,b):]
ncn (c47) t3 ; if number of parameters|2 then __ = ____
ps 15 ,hh c55 ; alarm(|<param|) < >
ps (c46) ,pm s1 ; s:=last used; M:=descr(a)
grn 1c37 ,hs c22 ; UV1:=0; goto take formal ____
pm (c36) ,ps (c46) ; s:=last used; gm s1 ,is (c36) ; formal[1]:=a; pm s1 X ; pm s2 ,gr s2 ; M:=descr(b); formal[2]:=a1
grn 1c37 ,hs c22 ; UV:=0; goto take formal ____
ps (c46) ,pp (c36) ; s:=last used qq (c46) t1 ; last used:=last used+1 arnf p X IZA ;
hv ra1 LZA ; if b=0 then goto zero __ ____ ____
ga ra2 X ; save exponent(b) pm p1 ,tl 9 ; gr c37 ,gm 1c37 ; (UV,UV1) := mantissa(b,b1) arnf s1 X IZA ;
ga c47 X V NZA ; if a|0 then save exponent(a) else __ = ____ ____
a1: grn c37 ,hv ra3 ; zero: goto exit ____
pm s2 ,tl 9 ; gr s2 ,mkn c37 ; RM := mantissa(a,a1); save a pm s2 ,mk 1c37 ; ml c37 ,nl ra ; RM:=(a,a1)⨯(b,b1); normalize the result tl -10 ,gr c37 ; UV:=head of the mantissa(result) arn c47 ;
a2: ar _ D ; 0
a: ar _ D NO t3 ; if exp_-512∧exp<511 then UVaddr:=exponent 0 __ > ____
ga c37 V NO ;
hv 0 NT ; else if exp>511 then alarm(|<spill|) ____ __ ____ < >
grn c37 X LO ; exit: if a=0∨b=0∨exp<-512 then UV:=M:=0 __ ____
a3: gm 1c37 ,hv c51 ; UV1:=M; goto RS ____
b k=e90,i=0 _
d i=e89 _
qq 144.9+c60.19
tmult; _
d e71=e71+e68, e89=e89+e68+e68 _
e _
d c60=c60+e68 _
e _
[JZ 20.12.1965]
b k=c60+e70, i=10, a2 _
[div(a,b): ]
ncn (c47) t3 ; if number of parameters|2 __ =
ps 15 ,hh c55 ; then alarm(|<param|) ____ < >
ps (c46) ,pm s1 ; s:=last used; M:=descr(a)
grn 1c37 ,hs c22 ; UV1:=0; goto take formal ____
pm (c36) ,ps (c46) ; s:=last used gm s1 ,is (c36) ; formal[1]:=a pm s1 X ; pm s2 ,gr s2 ; M:=descr(b); formal[2]:=a1
grn 1c37 ,hs c22 ; UV1:=0; goto take formal ____
ps (c46) ,pp (c36) ; s:=last used; p:=adr(b) qq (c46) t1 ; last used:=last used+1 arnf p X IZB ;
hv 0 LZB ; if divisor=0 then alarm(|<spill|) __ ____ < >
ga ra X ; save exponent(b) pm p1 ,tl 10 ; gr c54 ,gm c68 ; (c54,c68):=mantissa(b,b1) arnf s1 X IZA ;
ga c47 X V NZA ; if a=0 then goto exit __ ____ ____
grn c37 ,hv ra2 ; else save exponent(a) ____
pm s2 ,tl 8 ; gr s1 ,gm s2 ; (formal[1],formal[2]):=mantissa(a,a1) dl c54 ,gr c37 ; UV:=c:=a/b mt -1 D X ; M:=-c mkn c68 ,ar s2 ; R:=a1-c⨯b1
ml c54 ,ar s1 ; RM:=a-c⨯b+2∧(-39)⨯(a1-c⨯b1) |
dl c54 ,ar c37 ; R:=q1; M:=remainder gr c37 X ; UV:=q1; R:=remainder
dk c54 X ; M:=q2⨯2∧(-39) |
arn c37 ,nl ra1 ; normalize the quotient tl -10 ,gr c37 ; UV:=head of the mantissa(a/b) arn c47 ;
a: sr _ D ; 0
a1: ar _ D NO t1 ; Raddr:=expa-expb+norm.exp.+1 0
ga c37 V NO ; if exp_-512∧exp<511 then UVaddr:=exp __ > ____
hv 0 NT ; else if exp>511 then alarm(|<spill|) ____ __ ____ < >
grn c37 X LO ; if a=0∨exp<-512 then UV:=M:=0 __ ____
a2: gm 1c37 ,hv c51 ; exit: UV1:=M; goto RS ____
b k=e90,i=0 _
d i=e89 _
qq 144.9+c60.19
tdiv; _
d e71=e71+e68, e89=e89+e68+e68 _
e _
d c60=c60+e68 _
e _
[JZ 20.12.1965]
b k=c60+e70,i=10,a4,b4 _
[power(a,n), n_0] >
ps (c46) ,it 3 ; s:=lastused; if number of parameters | 2 __ =
ncn (c47) ,hv rb ; then goto error ____ ____
pm s2 ,hs c22 ; M:=description(n); goto take formal ____
arnf(c36) ,nc 0 ; if n<0 then __ ____
b: ps 15 ,hh c55 ; error: alarm(|<param|) < >
tkf -29 ,ps (c46) ; formal[2]:=n; comment rounded to integer _______
gr s2 ,pm s1 ; M:=description(a)
grn 1c37 ,hs c22 ; UV1:=0; goto take formal ____
ps (c46) ,pp (c36) ; pm s2 ,gm c54 ; rest of n := n arnf p ,gmf c47 ; loc[c47]:=exponentpart of a pm p1 ,tl 9 ; gr s1 ,gm s2 ; (formal[1],formal[2]):=mantissa of a grn c37 ,gr c36 ; UV:=UA:=0 grn 1c37 ,ud c51 ; UV1:=0; lastused:=lastused+2
pa c37 IOA t128 ; result:=1; float owerflow:=false _____
it sc37-1 ,pt rb1 ;
b4: hv 0 LOA ; next bit: if float owerflow then alarm __ ____
arn c54 ,gs rb1 ; R:=rest of n; first:=true ____
hv rb3 X NZ ; if rest of n = 0 then __ ____
arn c37 ,pm 1c37 ; begin comment finished; _____ _______
tl -9 ,gr c37 ; gm 1c37 ,pp (c36) ; (UV,UV1):=result
gp c37 ,hh c15 ; goto Running System end; ____ ___
b3: cln -1 ,gm c54 ; take next bit of rest of n
b1: nt _[s or c37-1],pp _[c37+s-1] ; second:p:=if first then c37-1 else last 0 0 __ ____ ____
used
b2: nt c__[or c36],qq c47+c36 ; addr(b2):=if first then c36 else c47 _47 __ ____ ____
hv ra1 LZ ; if last bit of rest of n | 0 ∧ first __ =
pm s2 ,mkn p1 ; then result:=result⨯a ____
pm s1 ,mk p2 ; else a:=a∧2 ____ |
ml p1 ,nl ra ; tl -1 ,gr p1 ;
arn (rb2) ,ar c47 ; calculate exponent part of if first then __ ____
a: ar _ D NO t3 ; result else a 0 ____
hv ra2 NO ; if exponent part>511 ∨ exponent part <-512 __
pi 1.0 NT ; then begin float owerflow:=true else ____ _____ ____ ____
xrn ,grn p1 ; exponent part:=product:=0 end ___
a2: ga (rb2) ,gm p2 ;
a1: pm r X ; comment R:=loc[r] => R|0 _______ =
d a3=b4-i,a4=b1+a3 ; relative addresses _
nt a3[or b1-i],hv ra4 ; if first then begin first:=-,first; __ ____ _____
; goto second end else goto next bit ____ ___ ____ ____
b k=e90,i=0 _
i=e89 qq 144.9+c60.19
tpower; _
d e71=e71+e68,e89=e89+e68+e68 _
e _
d c60=c60+e68 _
e _
[JZ 20.12.1965]
b k=c60+e70,i=10,a10 _
[double sqrt(a): ]
ncn (c47) t2 ; if number of parameters|1 __ =
ps 15 ,hh c55 ; then alarm(|<param|) ____ < >
ps (c46) ,pm s1 ; s:=last used; M:=descr(a)
grn 1c37 ,hs c22 ; UV1:=0; goto take formal ____
ps (c36) ,pm s1 ; s:=UA;
gm 1c37 ,arnf s ; UV1:=x2; RF:=x1⨯2∧u |
ps 8 ; s:=text nr(|<sqrt|) < >
hh c55 LT ; if a<0 then alarm(|<sqrt|) __ ____ < >
hv ra X LZ ; if x|0 then __ = ____
; begin _____
pa ra2 X ; Radr:=u; M:=x1; i:=0 ar 2 D ; tk -1 ,ga ra1 ; v:=(u+2)/2
tk 10 ,ck -9 ; m:=if u even then 0 __ ____
ga ra6 X ; else 1 ____
pm 1c37 ,it 8 ;
a6: tl _ ,gr ra3 ; (x1,x2):=(x1,x2)⨯2∧(8+m) 0 |
gm ra4 ,tl 1 ; (y01,y02):=RM:=(x1,x2)⨯2 gr c37 ,gm 1c37 ; new: (yi1,yi2):=RM
a2: bt _ t940 ; i:=i+1; if i=7 then 0 __ ____
nl ra7 ,hh ra8 ; begin normalize yn; goto exit end _____ ____ ___
arn ra3 ,pm ra4 ; RM:=(x1,x2) dl c37 ,gr c68 ; The following piece mt -1 D X ; of code is mkn 1c37 ,ar ra4 ; division of two double ml c37 ,ar ra3 ; precision fixed point dl c37 ,ac c68 ; numbers and after that xr 0 ,dk c37 ; addition of two double precision pm 1c37 ,gr 1c37 ; numbers arn c37 ,tl -1 ; gr c37 X ; ar 1c37 ,tl -39 ; ar c68 ,ar c37 ; RM:=(yi+a/yi)/2
a8: hv ra2-1 ,tl -10 ; goto new; exit: ____
a7: it _ t-1 ; 0
a1: ar _ D ; form exponent 0
; end ___
a: gr c37 ,gm 1c37 ; store result
ps (c46) ,hv c51 ; goto Running System ____
a3: qq [full word] ; working location a4: qq [full word] ; working location
b k=e90,i=0 _
d i=e89 _
qq 144.9+c60.19
tdoublesqrt; _
d e71=e68+e71, e72=e72+e68 _
d e89=e89+e68+e68+e68 _
e _
d c60=c60+e68 _
e _
[IM 22.12.1965]
b k=c60+e70,i=10,a20,b20 _
[double sin(y), track 1]
a1: ncn (c47) t2 ; if number of parameters | 1 then __ = ____
ps 15 ,hh c55 ; then alarm(|<param|) ____ < >
ps (c46) ,pm s1 ; M:=description(y)
grn 1c37 ,hs c22 ; UV1:=0; goto take formal ____
arnf(c36) X ITA ; TA:=y<0; M:=mantissa(head(y))⨯2∧-11 |
ga ra9 ,it (ra9) ; a9[0,9]:=expy
bs -508 ,hvn ra10 ; if expy < -508 then begin R:=0; goto mod end; __ ____ _____ ____ ___
arn (c36) X t1 ; RM:=mantissa(y)⨯2∧-11 |
tl 9 ,hs ra8 ; RM:=RM⨯2∧9⨯1/pi |
nl r1 ,gi ra6 ; save indicator
it _ t2 ; 0
a9: nt _ ,bs 0 ; if expy+normexp+2>0 then 0 __ ____
a10: tl (ra9) ,pa ra9 ; mod: begin RM:=(y/pi(mod 1))⨯2;a9[0,9]:=0 end _____ ___
; [s5] qq ra ,tl 1 ; RM:=RM/2 tl -2 ,gr c37 ; R00:=R0; UV:=R
gm 1c37 ,tl (ra9) ; UV1:=M; RM:=RM⨯2∧(a9[0,9]) |
gr c54 ,mkn c54 ; tk 1 ,pm c54 ;
ml c54 ,gm c54 ; RM:=RM∧2 |
sr 64 D ; RM:=RM-1/8 hs c65 ,qq 1c60.29+1 ; call next track gr c68 ,hs s ;
[The content of RM is in this moment K/16, where K=16⨯((z/2)∧2-1/8), |
where z=2⨯(if x<1/2 then x else x-1), and x=y/2/pi (mod 1). goto __ ____ ____ ____
next track, Chebysev evaluation] a: 162/998/ 54/915 ; head and 290/ 42/335/901 ; tail of 1/pi a2: gr c54 X ; Return to here from Chebysev evaluation sr sb3 ,tl -39 ; ar c54 ,sr sb7 ;
a6: pi _[TA] ,hs ra8 ; 0
nl ra4 ,ck 0[R00:=0] ; tl -10 ,pp (ra9) ;
a4: ar p_ D NZ t3 ; 0
ps (c46) ,gm 1c37 ; [s5] gr c37 ,hv c51 ; a8: gr c54 ,pp (s5) ; grn c36 ,mkn p ; UA:=0 pm c54 ,mk p1 ; ml p ,ud ra2 ; hr s1 X NTA ; mt ra4-1 ,tl -39 ; sr c54 ,hr s1 ; [double sin(y), track 2]
d i=a1+40 _
b9: it rb5 ,pa rb6 ; pp 1 ,grn rb12 ; b13: pm rb5 ,gm c53 ; pm rb12 ,gm rb10 ; pm c36 ,gm rb11 ; gr rb12 ,pm c53 ; gm c36 ,mkn c68 ; pm rb12 ,mk c54 ; ml c68 ,tl 4 ; gr c53 X ; b6: ar p[b5] ,sr rb11 ; tl -39 ,ar c53 ; sr rb10 ,bs p-4 ; pp p1 ,ar (rb6) ; b: bs p-18 ,hs s3 ; pp p1 ,hh rb13 ; b5: qq 377.39 ; 1023/1023/ 940/ 258 ; 0/ 16/ 655/ 830 ; 1021/ 268/ 444/ 921 ; 374/ 805/ 908/ 690 ; 276/ 659/ 244/ 891 ; 1023/1023/1023/ 944 ; 361/ 285/ 190/ 227 ; 0/ 0/ 6/ 487 ; 149/ 428/ 325/ 11 ; 1023/1023/ 624/ 942 ; 11/ 456/ 640/ 760 ; 0/ 16/ 792/ 776 ; 395/ 716/ 233/ 398 ; 1023/ 558/ 940/ 98 ; 222/ 485/ 285/ 121 ; 7/ 131/ 339/ 209 ; 159/ 902/ 778/ 256 ; 974/ 193/ 632/ 540 ; 198/ 190/ 993/ 157 ; 86/ 247/ 496/ 192 ; b10: qq [working location] ; b11: qq [working location] ; b12: qq [working location] ; [double cos(y): ]
d i=a1+80 _
ncn (c47) t2 ; if number of parameters|1 then __ = ____
ps 15 ,hh c55 ; alarm(|<param|) < >
ps (c46) ,pm s1 ; M:=description(y);
grn 1c37 ,hs c22 ; UV1:=0; goto take formal ____
arnf(c36) X ; ga ra3 ,it (ra3) ; bs -508 ,hvn ra3 ; arn (c36) X t1 ; tl 9 ,hs ra5 ; nl c47 ,it (c47) ; a3: tl ,tl 2 ; ar 256 D ; tl 1 ,tl -2 ; qq ra11 ,gm 1c37 ; gr c37 ,mkn c37 ; pm c37 ,tk 1 ; ml c37 ,gm c54 ; sr 64 D ; hs c65 ,qq 1c60.29+1; call track with Chebysev evaluation gr c68 ,hs s ; a11: 162/998/ 54/915 ; head and 290/ 42/335/901 ; tail of 1/pi a7: gr c54 X ; sr sb3 ,tl -39 ; ar c54 ,sr sb7 ; a14: hs ra5 ; nl ra12 ,ck ; tl -10 ;
a12: ar _ D NZ t3 ; 0
ps (c46) ,gm 1c37 ; gr c37 ,hv c51 ; a5: gr c54 ,pp (s5) ; grn c36 ,mkn p ; pm c54 ,mk p1 ; ml p ,hr s1 ;
d b3=b11-b, b7=b3-1 _
b k=e90,i=0 _
d i=e89 _
qq 144.9+c60.19
tdoublesin; _
qq 144.9+2c60.19
tdoublecos; _
d e71=e71+e68+e68,e72=e72+e68+e68,e89=e89+e68+e68+e68+e68+e68+e68 _
e _
d c60=c60+e68+e68+e68 _
e _
[IM 22.12.1965]
b k=c60+e70,i=10,a20,b20 _
[double arctan(y)
y=z⨯2∧exp = z⨯2∧(fl.exp+2), (1/4_z<1/2) | | <
y:= if abs(y)_ 1 then y else 1/y; __ < ____ ____
if abs(y)>1 then __ ____
y = 1/z⨯2∧(-fl.exp - 2) = 1/16/z⨯2∧(-abs(fl.exp)+2) ] | |
[track 1.]
a1: ncn (c47) t 2 ;if number of param. | 1 then __ = ____
ps 15 , hh c55 ;alarm (|<param|) < >
ps (c46) , pm s1 ;M:= descr.(y)
grn 1c37 , hs c22 ;UV1:=0 , goto taka formal ____
arn (c36) ITA ;TA:= fl.exp<0 ga c47 , snn c47 ;c47[0-9]:= -abs(fl.exp) ga c47 , ps (c36) arnf s ITB ;TB:= y<0
hv ra LZ ;if y=0 then goto a __ ____ ____
pm s1 , tl 9 ;RM:= z:= numerus(y)⨯2∧(-1) |
hh ra2 LTA ;if fl.exp<0 then goto a2 __ ____ ____
gr c37 , gm 1c37 ;else begin c37,1c37:= z1,z2 ____ _____
pmn 32 DX ;RM:= 1/16 dl c37 , gr c68 ;c68:= c:= RM/z1 mt -1 DX ;M:= -c mkn 1c37 , ml c37 ;RM:= -c⨯(z1+e⨯z2) ar 32 D ; +1/16 dl c37 , ar c68 gr c68 X dk c37 X ;RM:= z:= RM/z + c a2: arn c68 , gr c37 ;c37,1c37:= z
gm 1c37 , tl (c47) ;RM:= y/4:= z⨯2∧(-abs(fl.exp)) |
gr c68 , grn c36 ;c36:= 0
mkn c68 , tk 1 ;RM:= K/64:= (y∧2-1/2)/16 |
pm c68 , ml c68 sr 16 DIK ;save indicator gr c68 , gm c54 ;c68,c54:= K/64
hs c2 , qq 1c60.29 ;goto next track ____
a: pi 1.2 , hh ra2 ;TA:= 1 qq ;free [track 2. doublearctan(y)] i=a1+40 b9: hs c65 , qq 2c60.29+1;take constant track gs rb6 IK ;restore indicator grn rb12 , pp 1 ;initializing b8: pm s , gm c53 ;M:= c53:= t32 pm rb12 , gm sb10 ;t11:= t21 pm c36 , gm sb11 ;t12:= t22 gr rb12 , pm c53 ;t21:= t31 , t22:= M:= t32 gm c36 , mkn c68 ;RM:= K⨯t2 pm rb12 , mk c54 ml c68 , tl 6 gr c53 X b6: ar p[s] , sr sb11 ;t3:= K⨯t2 - t1 + C[p] tl -39 , ar c53 sr sb10 , bs p-11
pp p1 , ar (rb6) ;if p>11 then double-cell-const. __ ____
bs p-36 , hv r2 pp p1 , hh rb8 sr sb10 , ud rb6-1 ;t3:= t3-t1 sr sb11 , tl -39 ac c53 , mkn c37 ;arctan:= z⨯t3 pm c53 , mk 1c37 ml c37 , pp (c47)
hv ra3 LTA ;if fl.exp<0∨y=0 then goto a3 __ ____ ____
tl p , gr c68 ;else ____
gm c54 , arn ra7 ; arctan:= sign(y)⨯pi/2-arctan mt ra8 LTB sr c54 , tl -39 sr ra5 LTBV ar ra5 sr c68 , pp a3: nl ra4 , ck ;normalize a8: tl -10 , ps (c46) ;shift to fl.p. position
a4: ar p DNZ t 4 ;if R| 0 then R:= exponent __ = ____
tln -39 LO ;if exp<-512 then RM:= 0 __ ____
gr c37 , gm 1c37 ;UV,UV1:= doublearctan grn c36 , hv c51 ;c36:= 0, exit a5: 25/135/949/273 ;pi/32 a7: 22/560/564/787 b12: qq ;working location: t21 [track 3. doublearctan(y)] i=a1+80 a10: 0/ 0/ 0/ 377 ;C[0] 1023/1023/1022/ 159 ;C[1] 0/ 0/ 11/ 636 ;C[2] 1023/1023/ 952/ 815 ;C[3] 0/ 0/ 435/ 540 ;C[4] 1023/1021/ 404/ 615 ;C[5] 0/ 15/1018/ 695 ;C[6] 1023/ 925/ 515/ 676 ;C[7] 0/ 608/ 505/1019 ;C[8] 1020/ 323/ 254/ 458 ;C[9] 22/ 959/ 309/ 568 ;C[10] 880/ 552/ 416/ 927 ;C[11] 390/ 124/ 283/ 440 ;C[12] 0/ 0/ 0/ 1 435/ 588/ 841/ 732 ;C[13] 1023/1023/1023/1012 37/ 551/ 147/ 960 ;C[14] 0/ 0/ 0/ 71 460/ 403/ 551/ 460 ;C[15] 1023/1023/1023/ 566 374/ 701/ 102/1015 ;C[16] 0/ 0/ 2/ 923 381/ 681/ 569/ 389 ;C[17] 1023/1023/1004/ 897 418/ 668/ 457/ 603 ;C[18] 0/ 0/ 128/ 217 368/ 812/1023/ 898 ;C[19] 1023/1023/ 144/ 372 494/ 367/ 736/ 438 ;C[20] 0/ 6/ 88/ 511 21/ 45/ 32/ 753 ;C[21] 1023/ 978/ 758/ 805 342/ 301/ 783/ 511 ;C[22] 0/ 364/ 920/ 875 283/ 45/ 865/ 75 ;C[23] 1020/ 626/ 103/ 65 468/ 155/ 193/ 802 ;C[24] 56/ 417/ 716/ 188 b: qq ;working location: t11 b1: qq ; t12
db10=b-a10,b11=b1-a10 _
b k=e90,i=0 _
d i=e89 _
qq 144.9+c60.19
tdoublearctan; _
d e71=e71+e68,e72=e72+e68,e89=e89+e68+e68+e68 _
e _
dc60=c60+e68+e68+e68 _
e _
[FVV 21.12.65] [double ln(x)]
b k=c60+e70,i=10,a6,b10 _
[track 1]
d b=40i _
ncn (c47) t 2 ; if number of parameters|1 __ =
ps 15 ,hh c55 ; then alarm(|<param|) ____ < >
ps (c46) ,pm s1 ; M:=description(x)
grn 1c37 ,hs c22 ; UV1:=0; goto take formal ____
arnf(c36) ,gm c47 ; RF:=x[0]; c47:=exponent(x)
hv ra3 LZ ; if x=0 then goto error __ ____ ____
pm (c36) t 1 V NT ; if x>0 then M:=x[1]; skip next __ ____
a3: ps 5 ,hh c55 ; error: alarm(|<ln|) < >
hs c65 ,qq 1c60.29+1 ; take constant track sr c40 ,tl 1 ; t:=(numerus(x)-1)⨯2 sr c40 ,tl 11 ; -1 gr c37 ,gm 1c37
grn c68 ,gr c54 ; b1:=0; comment b1: c68,c54 _______
pm sb5 ,gs ra2 ; b:=a[n]; comment b: R,M _______
a1: pp b5 ,pp p-1 ; p:=number of constant cells ; again: p:=p-1 gm c36 ,pm c68 ; save b[1]
gm ra5 ,pm c54 ; b2:=b1; comment b2: ra5,sb9 _______
gm sb9 ,pm c36 gr c68 ,gm c54 ; b1:=b mkn c37 ,pm c68 ; b:=b1⨯t mk 1c37 ,ml c37 tl 1 ,sr ra5 ; ⨯2 - b2 a4: gr c36 X a2: ar p ,sr sb9 ; + a[p] tl -39 ,ar c36 bs pb8 ,hv ra6
pp p-1 ,ar (ra2) ; if double cell constant __
a6: bs p ,hh ra1 ; if p>0 then goto again __ ____ ____
sr ra5 ,ud ra4 ; b:=(b-b2)/2 sr sb9 ,tl -39 ar c36 ,ar c47 ; double ln:=(b+exponent(x)) gr c68 ,grn c36 mkn sb6 ,pm c68 ; ⨯ ln(2) mk sb7 ,ml sb6 tl 1 nl ra ,tl -10 ; normalize; shift to fl.p. position gm 1c37 ,ps (c46) a: pm t 8 D ; exponent(double ln) grf c37 ,hv c51 ; exit a5: 0 ; working location b2[0]
b k=e90,i=0 _
d i=e89 _
qq 144.9+c60.19 ; pass 6 word
tdoubleln; _
d e71=e71+e68, e72=e72+e68, e89=e89+e68+e68+e68 _
e _
d c60=c60+e68+e68 _
[double ln(x) track 2]
b: 0/ 556/ 144/ 566 ; constants⨯2∧(-10): a0 |
53/ 381/ 566/ 463 0/ 253/ 479/ 229 ; a1 279/1016/ 744/ 971 1023/1002/ 262/ 25 ; a2 358/ 69/ 715/ 66 ; TN Fix 0/ 2/ 498/ 844 ; a3 351/ 747/ 646/ 94 1023/1023/ 696/ 282 ; a4 30/ 184/ 831/ 56 0/ 0/ 44/1006 ; a5 258/ 507/ 538/ 494 1023/1023/1017/ 582 ; a6 52/ 752/ 508/ 222 0/ 0/ 0/ 968 ; a7 275/ 594/ 951/ 406 1023/1023/1023/ 878 ; a8 305/ 664/ 256/ 8 0/ 0/ 0/ 22 ; a9 89/ 773/ 283/1007 1023/1023/1023/1020 ; a10 b10: 294/ 822/ 514/ 497 273/ 466/ 405/ 750 ; a11 980/1016/ 70/ 409 ; a12 6/ 830/ 842/ 171 ; a13 1022/ 936/ 806/ 455 ; a14 0/ 177/ 966/ 310 ; a15 1023/ 995/ 386/ 929 ; a16 0/ 4/ 636/ 863 ; a17 1023/1023/ 257/ 87 ; a18 0/ 0/ 124/ 672 ; a19 1023/1023/1003/ 698 ; a20 0/ 0/ 3/ 328 ; a21 1023/1023/1023/ 467 ; a22 0/ 0/ 0/ 91 ; a23 1023/1023/1023/1009 ; a24 b1: 0/ 0/ 0/ 3 ; a25 b2: 177/ 456/ 383/ 500 ; ln(2) 231/ 755/ 350/ 316 b4: 0 ; working location b2[1]
d b3=1b2, b5=b1-b, b6=b2-b, b7=b3-b, b9=b4-b, b8=b-b10 _
e _
[PVV 23.12.65] [double exp(x)]
b k=c60+e70,i=10,a5,b15 _
[track 1]
d b=40i _
ncn (c47) t 2 ; if number of parameters|1 __ =
ps 15 ,hh c55 ; then alarm(|<param|) ____ < >
ps (c46) ,pm s1 ; M:=description(x)
grn 1c37 ,hs c22 ; UV1:=0; goto take formal ____
annf(c36) ,srf ra4 ; if abs(x)_511⨯ln(2) __ >
arnf(c36) V LT
ps 9 ,hv ra ; then goto large ____ ____
gm c47 ,gr c68 ; c47:=exponent(x)⨯2∧(-9) |
; c68:=numerus(x[0])⨯2∧(-11) |
pm (c36) t 1 ; M:=x[1] mkn ra1 ,pm c68 ; t:=x/ln[2] mk ra2 ,ml ra1 gr c37 ,gm 1c37 tl (c47) t 3 ga c36 ,arn c37 ; v:=entier(t) pm 1c37 ,it 10 tl (c47) ,cl -1 ; t:=(t-v sr 256 D ; -0.5) tl 1 ,gr c37 ; ⨯ 2 gm 1c37 ,pp (c36) hs c65 ,qq 1c60.29+1 ; take constant track
grn c68 ,gr c54 ; b1:=0; comment b1: c68,c54 _______
pm sb5 ,gp c36 ; b0:=a[n]; gs sb7
hs sb6 ; goto Chebyshev recurrence ____
sr sb12 ,ud sb14 ; double exp:=(b0-b2)/2 sr sb13 ,tl -39 ar c47 ,nl ra3 ; normalize
a3: it _ ,it 1 ; correct v 0
qq (c36) ,tl -10 ; shift to fl.p. position
gm 1c37 ,pm c36 ; ⨯2∧v |
grf c37 ,grn c47 a5: ps (c46) ,hv c51 ; exit: return to RS a: grn 1c37 ,arf (c36) ; large:
hh c55 NT ; if x>0 then alarm(|<exp|) __ ____ < >
grn c37 ,hv ra5 ; else double exp:=0; goto exit ____ ____
f _
a4: 354.1982 ; 511⨯ln(2)
m _
a1: 369/ 337/ 869/ 174 ; log base2 (e)/2 a2: 23/ 962/ 955/ 930 qq ; free space qq [double exp(x) track 2]
b: 186/ 507/ 908/ 942 ; constants⨯2∧(-2): a0 |
315/ 627/ 681/ 262 31/ 861/ 808/ 707 ; a1 41/ 554/ 854/ 107 2/ 763/ 44/ 19 ; a2 260/ 849/ 446/ 28 0/ 161/ 990/ 754 ; a3 112/ 869/ 304/ 426 0/ 7/ 6/ 356 ; a4 192/ 527/ 196/ 842 0/ 0/ 248/ 404 ; a5 509/ 405/ 252/ 697 0/ 0/ 7/ 172 ; a6 446/ 716/ 826/ 658 0/ 0/ 0/ 181 ; a7 321/ 458/ 951/ 214 0/ 0/ 0/ 3 ; a8 b10: 477/ 489/ 79/ 189 38/ 772/ 883/ 667 ; a9 0/ 687/ 510/ 619 ; a10 0/ 10/ 847/ 831 ; a11 0/ 0/ 160/ 85 ; a12 b1: 0/ 0/ 2/ 137 ; a13 ; Chebyshev recurrence: b2: pp b5 ,pp p-1 ; p:=number of constant cells ; again: p:=p-1
gm c47 ,pm c68 ; save b0[1]; b2:=b1; comment b2: rb3,rb4 _______
gm rb3 ,pm c54 gm rb4 ,pm c47 gr c68 ,gm c54 ; b1:=b0 mkn c37 ,pm c68 ; b0:=b1⨯t mk 1c37 ,ml c37 tl 1 ,sr rb3 ; x2 - b2 b15: gr c47 X b8: ar p ,sr rb4 ; + a[p] tl -39 ,ar c47 bs pb9 ,hv rb11
pp p-1 ,ar (rb8) ; if double cell constant __
b11: bs p ,hh rb2 ; if p>0 then goto again __ ____ ____
hr s1 ; return to track 1 b3: 0 ; working locations: b2[0] b4: 0 ; b2[1]
d b5=b1-b, b6=b2-b, b14=b15-b, b7=b8-b, b9=b-b10, b12=b3-b, b13=b4-b _
b k=e90,i=0 _
d i=e89 _
qq 144.9+c60.19 ; pass 6 word
tdoubleexp; _
d e71=e71+e68, e72=e72+e68, e89=e89+e68+e68+e68 _
e _
d c60=c60+e68+e68 _
e _
[TA 22.12.65]
b k=c60+e70, i=10, a40 _
[doubleinput, doubleinone, doubletypein] a: srn (c47) DX t1 ; appetite+1 ps (c46) ,hv ra2 ; s:=last used a1: ps (c46) t1 ; s:=last used:=last used +1 pm s-1 IRC ; return information arn (s) DIZA t-1 ; count parameters gm s X MRC ; move return information hv c15 LZA ; exit if no more parameters a2: arn s1 ,gm s1 ; next parameter, save counter hh ra4 X LA ; expression ga c36 ,tk 10 ; ca 0 ,hvn ra3 ; simple variable ar (c36) t-1 ; array length ga c36 ,tk 30 ; UA:=addr.first element sc c36 ; sr 2 D ; R:=array length-2 a3: pm ra9 ,ga c47 ; M:=return1, set number of numbers hs c65 ,qq 1c60.29+1; call double number read 1 gm sa25 ,gp sa24 ; set return, save p
a4h: hv s1 ,hs c22 ; goto read, expression in input ____
hvn ra3 ; a5: pm ra10 ,hh ra7 ; M:=return 2 a6: pm ra11 ,arn c63 ; M:=return 3, save sum gr c68 ,ud c90 ; select type it (c48) ,pa c82 ; save case a7h: pa c48 ,ud c12 ; case :=0, set UA a8h: hhn ra3 ,pm c68 ; reset sum gm c63 ,it (c82) ; reset case pa c48 ,hv c12 ; return from typein
d a1=a1-a, a8=a8-a _
a9: hs c2 ,qq c60.29+a1; exit from read after doubleinput a10: hv c12 ; exit from read after doubleinone a11: hsf c2 ,qq c60.29+a8; exit from read after doubletypein qq ; empty qq ; empty qq ; empty qq ; empty qq ; empty qq ; empty qq ; empty qq ; empty qq ; empty
d a5=a5-a, a6=a6-a _
b k=e90, i=0 _
d i=e89 _
qq 192.9+c60.19
tdoubleinput; _
qq 190.9+c60.19+a5.29+91.39f
tdoubleinone; _
qq 190.9+c60.19+a6.29+91.39f
tdoubletypein; _
d e71=e71+e68+e68+e68, e72=e72+e68+e68+e68 _
d e89=e89+e68+e68+e68+e68+e68+e68+e68+e68+e68 _
e _
[double number read, first track]
d a41=12e0+e96 _
a12: qq (c36) V t2 ; UA:=UA+2 hs c65 ,qq a41.29+1; call basic read pp ,grn c53 ; state:=0, exp1:=0 grn c37 ,grn 1c37 ; number:=0 a13h: pa c84 ,grn c54 ; sign:=plus, exp2:=0
d a26=7 [a15-a14], a27=9 [a16-a14] _
a28=23 [a19-a14], a29=27 [a20-a14]
a14: hsn (c91) IZA ; next: goto basic read ____
qq a29.6+ 6.12+436.21+272.30+ 5.39; terminator parameter qq a28.6+26.12+ 65.21+ 31.30+ 71.39; digit - qq a27.6+14.12+511.21+464.30+511.39; minus - qq 0.6+23.12+511.21+471.30+511.39; plus - qq 0.6+35.12+143.21+511.30+511.39; point - qq a26.6+53.12+287.21+127.30+511.39; ten -
a15: it (s29) ,bs 9 ; [ten] if oldstate<3 __
pm c34 ,gm 1c37 ; then number :=1 ____
a16: it p ,qq (c84) ; [minus] sign:=sign+state (1,6,8) a17: hv ra14 ,gr c54 ; store digit
arn c37 ,nc ; if too many digits then begin __ ____ _____
qq (c53) t1 ; exp1:=exp1+1; goto a18 end; ____ ___
nc ,hv ra18 ;
pm 1c37 ,tl 1 ; else ____
gr c37 ,gm 1c37 ; number:=2⨯number tl 2 X ; M:=head(8⨯number) ar c54 ,gm c54 ; R:=tail(8⨯number)+digit ar 1c37 ,tl -39 ; M:=tail(10⨯number)+digit ar c37 ,ar c54 ; R:=mente+head(10⨯number)+digit gr c37 ,gm 1c37 ; number:=10⨯number+digit
a18: bs p-3 ,it -1 ; if state>3 then __ ____
qq (c53) ,hh ra13 ; exp1:=exp1-1, goto next ____
a19: arn c49 ,bs p506 ; [digit] tk -30 ,hh ra17 ; not in exponent pm c54 ,ml s39 ; in exponent
gm c54 ,hv ra14 ; exp2:=10⨯exp2+digit; goto next ____
a20: can p ,hv ra14 ; [termination] goto next ____
can p-8 ,hh ra21 ; error exit vk 2c60 ,lk c67 ; call double number read 2
a21: can p-15 ,hsn s33 ; goto error track via basic read ____
vk ,hs a40 ; goto read 2 ____
a22: pp ,nt 2 ; restore p
bt (c47) ,hv ra12 ; go back if more numbers __ __
a23: qqf ,qq ; exit instruction
d a24=a22-a12, a25=a23-a12 _
[the orders it (s29) in a15, ml s39 in 2a19 and hsn s33 in a21 refer to addresses in basic read. Return after hsn s33 (from error track) by s-34] [double number read, second track] a30: mln (204) XV MTCt-205 ; head of 0.1, pos. 0 cm (r102) VD IQB t409 ; tail of 0.1 a31: qq 160 ; head 10 qq ; tail 10 a32: it s1 ,pt ra39 ; set return address can p-7 ,hh ra38 ; input ditto pi (c84) ,arn c54 ; indicator=sign, R:=exp2
srn c54 LQA ; if neg. exponent then R:=-exp2 __ ____
ar c53 ,ga c54 ; exp2:=_exp2+exp1 +
ps ra30 V LT ; if neg. number then s:= addr.0.1 __ ____
ps ra31 ,it 3 ; else s:= addr. 10 ____
pa c53 t-4 ; exp1:=exp(konstant) ann c54 ,ga c54 ; exp2:=abs(exp2) arn c37 ,pm 1c37 ; nl ra34 ,tl -1 ; number pos.39 changed to number gr c37 ,it 78 ; pos. 0 + exponent a33h: qq (ra34) ,gm 1c37 ; exponent:=exponent+78 bt (c54) t-1 ; again: pm s1 ,hh r1 ; multiply exp2 times hv ra36 ,mkn c37 ; R:=tail(s)⨯head(number) pm s ,mk 1c37 ; R:=R+head(s)⨯tail(number ml c37 ,nl ra35 ; tl -1 ,gr c37 ; arn c53 ;
a34: ar _ D ; 0
a35: ar _ D NO t3 ; exponent:=exponent+incr.+exp1 0
ga ra34 V NO ; store exponent
hv 0 NT ; goto spill ____
hh ra33 NO ; if -,neg.overflow then goto again __ ____ ____
grn c37 ,grn 1c37 ; else number:=0 ____
a36: pm c37 ,arn 1c37 ; hh ra37 XNRB ; RM:=number
srn 1c37 ,tl -39 ; if neg. number __
a37h: sr c37 ,nl r1 ; then number:=-number ____
it ,qq (ra34) ; exponent:=exponent-1 or 2 tl -10 ,gr (c36) ; store head(number) is (c36) ,gm s1 ; store tail(number)
arn ra34 NZ ; if number |0 then __ = ____
a38h: ga (c36) ,ud c89 ; store exponent vk c64 ,lk c67 ; restore running system
a39: [vk c64 ,hv _ ; order in running system, return] 0
d a40=c67+a32-a30 _
d c60=c60+e68+e68+e68 _
e _
[TA 22.12.65]
b k=c60+e70, i=10, a27 _
[doublewrite, doubleoutput] a: pm c90 XV ; vy write a1: pm ra5 X ; pm 1023 ps (c46) ,pm s1 ; s:=last used; M:=layout description a2: gr s1 X MRA ; stack medium pm (c47) DX t3 ; appetite+3 ga s1 ,hs c22 ; stack parameter counter arn (c36) ,ps (c46) ; layout value a3: hv ra4 ,pm c68 ; next parameter ps (c46) t1 ; last used:=last used+1 arn s ,ud s ; restore output sum gm 1023 ,ud c89 ; restore medium pm s-1 IRC ; move return information gm s MRC ; pm c43 ,gm c37 ; UV:=nonsense pm s1 ,ud ra2 ; R:=layout, store medium and counter a4: pm s2 ,it 1 ; M:=next parameter bt (s1) ,hv c51 ; exit gr s2 ; store layout grn 1c37 ,hs c22 ; UV1:=0 ps (c46) ,arn (c36) ; parameter value a5: sr c43 ,pm 1023 ; -nonsense
gm c68 ,ud s1 ; if value=nonsense __
hh ra3 LZ ; then goto next parameter ____ ____
it p ,pt c83 ; save p arnf s2 ,tkf -9 ; RA:=layout hs c65 ,qq 1c60.29+1; call next track gt sa26 ,sy 58 ; store layout, lower case arnf(c36) X ITB ; ga ra7 ,gm c37 ; store exponent is (c36) ,arn s1 ; RM:=number hh ra6 X NTB
is (c36) ,srn s1 ; if number<0 then __ ____
a6: sy 32 ,pa sa25 ; RM:=-number, minus
sy V NTB ; else space ____
tl -39 ,sr c37 ; a7: pp ,nl sa24 ; p:=exp.number pa sa25 LZ t5 ; set a25
a8: pi 32 ,hs s ; set indicator, goto next track ____
a9: qq 10 ,qq ; konstant10, a-marked qq ; empty
d a1=a1-a, a10=a3-a8, a11=a9-a8, a27=1a6-a8 _
b k=e90, i=0 _
d i=e89 _
qq 193.9+c60.19
tdoublewrite; _
qq 193.9+c60.19+a1.29
tdoubleoutput; _
d e71=e71+e68+e68, e72=e72+e68+e68 _
d e89=e89+e68+e68+e68+e68+e68+e68 _
e _
[doublewrite, doubleoutput, second track] a12: gr c37 ,gm 1c37 ; store number
a13: pp p_ ,bs p-501 ; if p<-10 then 0 __ ____
pp p11 ,hh ra14 ; p:=p+11, goto a14 ____
qq (ra16) t-3 ; else begin exponent:=exponent-3 ____ _____
mkn ra22 ,pm c37 ; number:=number⨯konstant mk ra23 ,ml ra22 ; nl ra13 ,pp p-9 ;
a14: hv ra12 ,pa ra20 ; goto a12 end; ____ ___
a15: bs p ,hv ra17 ; if p=1 then goto print else __ ____ ____ ____
a16: qq t1 ; exponent:=exponent+1 gr c37 ,mkn sa11 ; number:=number⨯10 pm c37 ,ml sa11 ; nl r1 ,pp p9 ;
pp p_ ,hv ra15 ; goto a15 0 ____
a17: tl p-9 ,ga ra21 ; store first digit ca ,it 16 ; test for zero
a18: sy (ra21) ,pp _ ; digit; p:=number of digits 0
sy 59 ,hv ra21 ; point a19: arn sa27 ,ud c83 ; reset p bt t512 ; hh sa10 ; return after exp. printing
pp 3 ,nc (ra16) ; p:=3, if exp|0 __ =
sy 60 ,sy 27 ; then 10 ____
ca (ra16) ,sy 0 ; else space ____
an (ra16) DX IPA ; PA=0, R:=exp sy 58 ,mkn ra22 ; R:=exp⨯konstant
bs (ra16) ,it 32 ; if exp<0 then minus __ ____
a20: sy ,pp p-1 ; else space, p:=p-1 ____
gr c37 ,mkn sa11 ; pm c37 ,ml sa11 ; number:=number⨯10 ga ra21 ,nc ; store digit
sy (ra21) V IPA ; if digit|0 then digit __ = ____
sy 16 V LPA ; else 0 ____
sy V NPA ; or space (before exponent)
a21: sr _ D ; number:=number-digit 0
bs p511 ,hv ra19 ; if p=1 then goto a19 __ ____ ____
tl 9 ,hh ra20 ; else next digit ____
a22: gi r262 DXV NKA t147 ; head of constant(2∧9/10∧3) | |
a23: ly (r335) V RC t892 ; tail qq ; empty
d a24=a13-a12,a25=a16-a12, a26=a18-a12 _
d c60=c60+e68+e68 _
e _
s _