NonStop S-Series Server Description Manual (G06.24+)
TNS Instruction Set
HP NonStop S-Series Server Description Manual—520331-003
11-10
Definitions of TNS Instructions
Definitions of TNS Instructions
The instruction definitions given on this and the following pages are listed in
alphabetical order to facilitate quick reference. A listing by general category is
provided in Table A-2 on page A-9. Unless otherwise stated, “stack” refers to the
register stack.
ADAR (00016-). Add A to a Register. A is added in signed integer form to the register
pointed to by the Register field of the instruction. A is deleted from the stack. Overflow
is set if the result is greater than 32767 or less than –32768. Carry can be set, and
Condition Code is set on the result. For binary coding details, refer to Table B-5 on
page B-5.
ADDI (104---). Add Immediate Operand to A. The immediate operand is added to A in
signed integer form. Overflow is set if the result is greater than 32767 or less than
-32768. Carry can be set. Condition Code is set. Examples of the use of immediate
operands are shown in Figure 11-3 on page 11-4.
ADDS (002---). Add Immediate Operand to S. The signed immediate operand is
added to the S register in integer form. If the resultant value in S is greater than
32767, a stack overflow trap occurs.
ADM (-74---). Add A to Variable in Data Space. The A register is added in integer form
to the contents of the effective memory location and the Condition Code is set on the
sum. Overflow is set if the result is greater than 32767 or less than –32768. Carry can
also be set. A is then deleted from the stack. For binary coding details, refer to
Table B-1 on page B-1.
ADRA (00014-). Add Register to A. The contents of the register pointed to by the
Register field of the instruction are added in integer form to register A. Overflow is set
if the result is greater than 32767 or less than –32768. Carry can be set, and
Condition Code is set on the result. For binary coding details, refer to Table B-5 on
page B-5.
ADXI (104---). Add Immediate Operand to an Index Register. The immediate operand
is added in signed integer form to the contents of the index register specified by the “x”
field of the instruction. Overflow is set if the result is greater than 32767 or less than
-32768. Carry can be set; Condition Code is set on the result. For binary coding
details, refer to Table B-2 on page B-2.
ALS (0302--). Arithmetic Left Shift. If the shift count field is zero, the word contained in
B is shifted left by the dynamic count contained in A. A is then deleted from the stack.
However, if shift count field is not zero, A is shifted left by that number. The sign bit is
preserved only in nonaccelerated mode; in accelerated mode, ALS is treated as LLS
(Logical Left Shift). On single-word shifts, dynamic shift counts greater than 31 or less
than 0 give undefined results. Condition Code is set. Overflow and Carry are
unaffected. Refer to Figure 11-4 on page 11-5 for a comparison of logical (unsigned)
shifts and arithmetic (signed) shifts.