NonStop S-Series Server Description Manual (G06.24+)
TNS Instruction Set Definition
HP NonStop S-Series Server Description Manual—520331-003
C-32
Instruction Definitions
0 0 0 3 3 4 CDE convert double to extended
V := 0;
sign:=B.<0>; exp:=31+256;
if sign=1 then BA:=-BA;
H:=0;
if BA<>0 then
{norm(BA);
G:=exp;
B.<0>:=sign}
else G:=0;
RP:=RP+2
0 0 0 3 3 5 CQER convert quad to extended with rounding
V := 0;
sign:=D.<0>; exp:=63+256;
if sign=1 then
DCBA:=-DCBA;
if DCBA<>0 then
{norm(DCBA);
DCBA:=DCBA'+'%400;
if carry out then
exp:=exp+1;
exponent(A):=exp;
D.<0>:=sign}
0 0 0 3 3 6 CQE convert quad to extended
V := 0;
sign:=D.<0>; exp:=63+256;
if sign=1 then
DCBA:=-DCBA;
if DCBA<>0 then
{norm(DCBA);
exponent(A):=exp;
D.<0>:=sign}
0 0 0 3 3 7 CEI convert extended to integer
V := 0;
t:=15+256-exponent(A);
sign:=D.<0>;
if -2**15 <= DCBA <= 2**15-1
then {D.<0>:=1;
D:=D'>>'t;
if sign=1 then D:=-D}
else V:=1;
cc(D); RP:=RP-3
0 0 0 3 4 2 LWUC load word from user code space
cc(A:=mem[CCSEG[0],$XADR(A)])
0 0 0 3 4 3 XSMG checksum block
C=initial checksum
B=block address
A=count
while A<>0 do
{C:=C xor stack[B];
A:=A-1;
B:=B+1};
RP:=RP-2
Table C-2. Instruction Definitions (page22of38)