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

TNS Instruction Set
HP NonStop S-Series Server Description Manual520331-004
11-19
Definitions of TNS Instructions
CQE (000336). Convert Quadruple to Extended. The quadrupleword signed integer in
DCBA is converted to an extended floating-point quantity in DCBA, with truncation if
the result exceeds 55 significant bits.
CQER (000335). Convert Quadruple to Extended, Rounded. The quadrupleword
signed integer in DCBA is converted to an extended floating-point quantity in DCBA,
with rounding if the result exceeds 55 significant bits.
CQF (000324). Convert Quadruple to Floating. The quadrupleword signed integer in
DCBA is converted to a floating-point quantity, with truncation if the result exceeds 23
significant bits. DCBA is deleted, and the two-word result is pushed onto the stack.
CQFR (000330). Convert Quadruple to Floating, Rounded. The quadrupleword
signed integer in DCBA is converted to a floating-point quantity, with rounding if the
result exceeds 23 significant bits. DCBA is deleted, and the two-word result is pushed
onto the stack.
CQI (000264). Convert Quad to Integer. The four-word value in DCBA is converted to
an integer by extracting the least significant word. DCBA is deleted, and the integer
result is pushed onto the stack. Overflow is set if the operand was greater than 32767
or less than –32768.
CQL (000246). Convert Quad to Logical. The four-word value in DCBA is converted
to a logical value by extracting the least significant word. DCBA is deleted, and the
integer result is pushed onto the stack. Overflow is set if the operand was greater than
65535.
DADD (000220). Double Add DC to BA. The two doubleword integers contained in
DC and BA are added in doubleword integer form. Both operands are then deleted,
and the doubleword result is pushed onto the stack. Overflow is set if the result is
greater than 2
31
–1 or less than –2
31
. Carry can be set, and Condition Code is set on
the result.
DALS (1302--). Double Arithmetic Left Shift. If the shift count field is zero, the
doubleword contained in CB is shifted left by the dynamic count contained in A. A is
then deleted from the stack. However, if the shift count field is not zero, BA is shifted
left by that number. The sign bit is preserved only in nonaccelerated mode; in
accelerated mode, DALS is treated as DLLS (Double Logical Left Shift). On
doubleword shifts, dynamic shift counts greater than 255 or less than 0 give undefined
results. Condition Code is set. Refer to Figure 11-4 on page 11-5 for a comparison of
logical (unsigned) shifts and arithmetic (signed) shifts.
DARS (1303--). Double Arithmetic Right Shift. If the shift count field is zero, the
doubleword contained in CB is shifted right, propagating the sign bit, by the dynamic
count contained in A. A is then deleted from the stack. However, if the shift count field
is not zero, BA is shifted right, propagating the sign bit, by that number. On
doubleword shifts, dynamic shift counts greater than 255 or less than 0 give undefined
results. Condition Code is set. Refer to Figure 11-4 on page 11-5 for a comparison of
logical (unsigned) shifts and arithmetic (signed) shifts.