NonStop S-Series Server Description Manual (G06.24+)
TNS Instruction Set Definition
HP NonStop S-Series Server Description Manual—520331-003
C-22
Instruction Definitions
0 0 0 2 6 5  CDQ  convert double to quad
 (t,u):=BA;
 s:=if B<0
 then %177777 else 0;
 RP:=RP+2;
 DCBA:=(s,s,t,u)
0 0 0 2 6 6  CIQ  convert integer to quad
 t:=A;
 s:=if A<0
 then %177777 else 0;
 RP:=RP+3;
 DCBA:=(s,s,s,t)
0 0 0 2 6 7  CLQ  convert logical to quad
 t:=A;RP:=RP+3;
 DCBA:=(0,0,0,t)
0 0 0 2 7 0  FADD floating add
 V:=0
 t1:=exponent(C);
 t2:=exponent(A);
 if BA<>0 and DC<>0
 and abs(t1-t2)<=24 then
 {sign1:=D.<0>;
 sign2:=B.<0>;
 D.<0>:=B.<0>:=1;
 exponent(C):=0;
 exponent(A):=0;
 s:=t1-t2;
 if s>=0 then
 BA:=BA'>>'s;
 else
 {DC:=DC'>>'-s;
 DC:=:BA;
 t1:=t2}
 if sign1=sign2 then
 {DC:=DC'+'BA;
 if carry then
 {DC:=DC'>>'1;
 t1:=t1+1;
 D.<0>:=1}}
 else
 {DC:=DC'-'BA;
 if not carry then
 {DC:=-DC;
 sign1:=~sign1}
 if DC=0 then
 t1:=sign1:=0
 else
 while D.<0>=0 do
 {DC:=DC'<<'1;
 t1:=t1-1}}
 DC:=DC'+'%400;
 if carry then
 t1:=t1+1;
 if t1.<6>=1 then
 call overflow;
 D.<0>:=sign1;
 exponent(C):=t1}
 else
 if DC=0 or t1-t2<-24 then
 DC:=BA;
 if no overflow then cc(DC); RP:=RP-2
Table C-2. Instruction Definitions (page12of38)










