NonStop S-Series Server Description Manual (G06.24+)
TNS Instruction Set
HP NonStop S-Series Server Description Manual—520331-003
11-15
Definitions of TNS Instructions
CDF (000306). Convert Double to Floating. The doubleword signed integer in BA is 
converted to a floating-point quantity in BA, with truncation if the result exceeds 23 
significant bits.
CDFR (000326). Convert Double to Floating, Rounded. The doubleword signed 
integer in BA is converted to a floating-point quantity in BA, with rounding if the result 
exceeds 23 significant bits.
CDG (000366).  Count Duplicate Words. Beginning at the address (in the current data 
segment) specified in register C, and for a maximum count of words specified in 
register B, this instruction counts the number of duplicate words in the buffer. Register 
A is incremented on each duplicate found and must contain an initial value. After 
execution, A contains the original A value plus the number of duplicate words, B 
contains a count of the words left in the buffer (zero if empty), and C contains the 
address of the first word that did not match its predecessor (or the word after the last 
word in the buffer). The comparison actually starts with the words specified by C and 
C–1. This instruction is intended to be used in conjunction with MNGG.
CDI (000307).  Convert Double to Integer. The doubleword integer in BA is converted 
to a single-word integer by copying the contents of A into B and deleting A. Overflow is 
set if the doubleword quantity is greater than 32767 or less than –32768.
CDQ (000265).  Convert Double to Quad. The doubleword integer in BA is extended 
to a quadrupleword quantity, filling the most significant two words with zeros if B is 
positive or ones if B is negative.  BA is deleted, and the quadrupleword result is 
pushed onto the stack.
CDX (000356). Count Duplicate Words, Extended.  Beginning at the 32-bit even-byte 
address specified in DC, and for a maximum count of words specified in B, this 
instruction counts the number of duplicate words in the buffer. A is incremented on 
each duplicate found and must contain an initial value. After execution, A contains the 
original A value plus the number of duplicate words, B contains a count of the words 
left in the buffer (zero if empty), and DC contains the extended address of the first word 
that did not match its predecessor (or the word after the last word in the buffer). The 
comparison actually starts with the words specified by DC and DC–2. This instruction 
is intended to be used in conjunction with MNDX.
CED (000314). Convert Extended to Double.  The extended floating-point quantity in 
DCBA is converted to a doubleword signed integer. BA is deleted, and the doubleword 
result is pushed onto the stack. Overflow is set if the value of the operand was greater 
than 2
31
–1 or less than –2
31
. Condition Code is set on the result.
CEDR (000315). Convert Extended to Double, Rounded. The extended floating-point 
quantity in DCBA is converted to a doubleword signed integer, with rounding according 
to the contents of the most significant fractional bit. BA is deleted, and the doubleword 
result is pushed onto the stack. Overflow is set if the value of the operand was greater 
than 2
31
–1 or less than –2
31
. Condition Code is set on the result.
CEF (000276). Convert Extended to Floating. The four-word floating-point quantity in 
DCBA is converted to a two-word floating-point quantity. DCBA is deleted, and the 
two-word result is pushed onto the stack.










