NonStop S-Series Server Description Manual (G06.27+)
TNS Instruction Set Definition
HP NonStop S-Series Server Description Manual—520331-004
C-18
Instruction Definitions
0 0 0 2 0 2 LMPY logical multiply
cc(BA:=B'*'A); V:=0
0 0 0 2 0 3 LDIV logical divide
V:=(C'>='A);
(C,B):=(CB 'mod' A,CB'/'A);
cc(B);
RP:=RP-1
[See Note 4: OVERFLOW RESULTS UNDEFINED ]
A is undefined after the operation
0 0 0 2 0 4 LNEG logical negate
ccl(A:=-A)
0 0 0 2 0 5 LCMP logical compare
cc(B':'A); RP:=RP-2
0 0 0 2 1 0 IADD integer add
ccn(B:=B+A); RP:=RP-1
[ See Note 5: OVFL TRAP RESULTS UNDEFINED ]
[ See Note 6: OVERFLOW TNS COMPATIBLE ]
0 0 0 2 1 1 ISUB integer subtract
ccn(B:=B-A); RP:=RP-1
[ See Note 5: OVFL TRAP RESULTS UNDEFINED ]
[ See Note 6: OVERFLOW TNS COMPATIBLE ]
0 0 0 2 1 2 IMPY integer multiply
V:=~(-32768<=B*A<=32767);
cc(B:=B*A); RP:=RP-1
[See Note 3: OVERFLOW RESULTS UNDEFINED ]
0 0 0 2 1 3 IDIV integer divide
V:=~(-32768<=B/A<=32767);
cc(B:=B/A); RP:=RP-1
[See Note 3: OVERFLOW RESULTS UNDEFINED ]
0 0 0 2 1 4 INEG integer negate
ccn(A:=-A)
0 0 0 2 1 5 ICMP integer compare
cc(B:A); RP:=RP-2
0 0 0 2 1 7* TRCE add an entry to
the trace table
HGFEDCBA=entry
'Indivisible On';
if TRBASE'<'TRLIM then
{sysstack[TRACE:TRACE+7] := HGFEDCBA;
TRACE:=TRACE+8;
if TRACE'>'TRLIM
then TRACE:=TRBASE};
'Indivisible Off'
0 0 0 2 2 0 DADD double add
ccn(DC:=DC+BA); RP:=RP-2.
[ See Note 5: OVFL TRAP RESULTS UNDEFINED ]
[ See Note 6: OVERFLOW TNS COMPATIBLE ]
Table C-2. Instruction Definitions (page 8 of 38)