NonStop S-Series Server Description Manual (G06.24+)

TNS Instruction Set Definition
HP NonStop S-Series Server Description Manual520331-003
C-19
Instruction Definitions
0 0 0 2 2 1 DSUB double subtract
ccn(DC:=DC-BA); RP:=RP-2
[ See Note 5: OVFL TRAP RESULTS UNDEFINED ]
[ See Note 6: OVERFLOW TNS COMPATIBLE ]
0 0 0 2 2 2 DMPY double multiply
ccn(DC:=DC*BA); K:=0; RP:=RP-2
[ See Note 4: OVERFLOW RESULTS UNDEFINED]
0 0 0 2 2 3 DDIV double divide
cc(DC:=DC/BA); K:=0;
V:=(BA=0 or DC=2**31);
RP:=RP-2
[ See Note 4: OVERFLOW RESULTS UNDEFINED]
0 0 0 2 2 4 DNEG double negate
ccn(BA:=-BA)
0 0 0 2 2 5 DCMP double compare
cc(DC:BA); RP:=RP-4
0 0 0 2 2 6 MNGG move words while not duplicate
D=destination
C=source
B=count
A=value <> to value of source
while cc(B)<>"=" and stack[C]<>A do
{A:=stack[D]:=stack[C];
D:=D+1;
C:=C+1;
B:=B-1;
};
RP:=RP-1
0 0 0 2 2 7 MNDX move words while not duplicate extended
FE=destination
DC=source
B=count
A=value<>to value of source
while cc(B)<>"=" and xmem[DC]<>A do
{A:=xmem[FE]:=xmem[DC];
FE:=FE+2;
DC:=DC+2;
B:=B-1
};
RP:=RP-1
0 0 0 2 3 0xx QST quad store
adr:=(if I=%230 then 0
else R[I.<14:15>+4])*4+A;
stack[adr:adr+3]:=EDCB;
RP:=RP-5
[ See Note 7: NOT ATOMIC ]
0 0 0 2 3 4xx QLD quad load
adr:=(if I=%234 then 0
else R[I.<14:15>+4])*4+A;
RP:=RP+3;
cc(DCBA:=stack[adr:adr+3])
Table C-2. Instruction Definitions (page 9 of 38)