3. Instructions
336
CS/CJ/NSJ Series Instructions Reference Manual (W474)
Function
z NASR
NASR(581) shifts D (the shift word) by the specified number of binary bits (specified in C) to the right
(from the rightmost bit to the leftmost bit). Either zeros or the value of the rightmost bit will be placed
into the specified number of bits of the shift word starting from the rightmost bit.
z NSRL
NSRL(583) shifts D and D+1 (the shift words) by the specified number of binary bits (specified in C) to
the right (from the leftmost bit to the rightmost bit). Either zeros or the value of the rightmost bit will be
placed into the specified number of bits of the shift word starting from the rightmost bit.
Precautions
• For any bits which are shifted outside the specified word, the contents of the last bit is shifted to the
Carry Flag (CY), and all other data is discarded.
• When the number of bits to shift (specified in C) is “0,” the data will not be shifted. The appropriate
flags will turn ON and OFF, however, according to data in the specified word.
Example Programming
• When CIO 0.00 is ON, CIO 100 will be shifted 10 bits to the right (from the leftmost bit to the
rightmost bit). The number of bits to shift is specified in bits 0 to 7 of word CIO 300. The contents of
bit 15 of CIO 100 is copied into the bits from which data was shifted and the contents of the leftmost
bit of data which was shifted out of range, is shifted into the Carry Flag (CY). All other data is lost.
Carry Flag CY • ON when 1 is shifted into the Carry Flag (CY).
• OFF in all other cases.
Negative Flag N • ON when the leftmost bit is 1 as a result of the shift.
• OFF in all other cases.
Name Label Operation
Lost
N bits
Contents of "a" or
"0" shifted in
Shift n-bits
Lost
Contents of "a" or
"0" shifted in