3. Shift amounts from 31 to 63 cause
theentire numeric part to be
shifted out of the register, leav
ing a result of the maximum nega
tive number or zero, depending on
whether or not the initial contents
were negative.
SHIFT LEFTSINGLE LOGICAL SLL [RS] '89'
o 8 12 1620 31
The 32-bit first operand is shifted left
the number of bits specified by the
second-operand address, and the resultis placed at the first-operand location.
Bits 12-15
ignored.
of the instruction are
The second-operand address is not used
to address data;its rightmost six bits
indicate the number of bit positions to
be shifted. The remainder of the
addressis ignored.
All 32 bits of the first operand partic
ipate in the shift. Bits shifted out of
bit position0 are not inspected and are
lost.Zeros are supplied to the vacated
bit positions on the right.Condition Code: The code remains
unchanged.
Program Exceptions: None.
SHIFT RIGHT DOUBLESRDA [RS] '8E'
o 8 12 1620 31
The 63-bit numeric part of the signed
first operand is shifted right the
number of bits specified by the second
operand address, and the result is
placed at the first-operand location.
Bits 12-15
ignored.
of the instruction are
The R\ field designates an even-odd pair
of general registers and must designate
an even-numbered register; otherwise, a
specification exception is recognized.
The second-operand address is not used
to address data; its rightmost six bits
indicate the number of bit positions to
be shifted. The remainder of the
address is ignored.
The first operand is treated as a 64-bit
signed binary integer. The sign posi
tion of the even-numbered register
remains unchanged. The leftmost bit
position of the odd-numbered register
contains a numeric bit, which partic
ipates in theshift in the same manner
as the other numeric bits.Bits shifted
out of bit position 31 of the odd
numbered register are not inspected and
are lost. Bits equal to the sign are
supplied to the vacated bit positions on
the left.
ResultingCondition Code: o
1
2
3
Result zero
Result less than zero
Result greater than zero
Program Exceptions:Specification SHIFT RIGHT DOUBLE LOGICAL SRDL [RS) '8C' o 8 12 16 20 31
The 64-bit first operand is shifted
right the number of bits specified by
the second-operand address, and the
result is placed at the first-operand
location.Bits 12-15
ignored.
of the instruction are
The R\ field designates an even-oddpair of general registers and must designate
an even-numbered register; otherwise, a
specification exception is recognized.
The second-operand address is not used
to address data; its rightmost six bits
indicate the number of bit positions to
be shifted. The remainder of the
address is ignored.
All 64 bits of the first operand partic
ipate in the shift. Bits shifted out of
bit position 31 of the odd-numbered
register are not inspected and are lost.Zeros are supplied to the vacated bit
positions on the left.Condition Code: unchanged.
Program Exceptions:
Specification
The code remainsChapter 7. General Instructions 7-33
the
shifted out of the register, leav
ing a result of the maximum nega
tive number or zero, depending on
whether or not the initial contents
were negative.
SHIFT LEFT
o 8 12 16
The 32-bit first operand is shifted left
the number of bits specified by the
second-operand address, and the result
Bits 12-15
ignored.
of the instruction are
The second-operand address is not used
to address data;
indicate the number of bit positions to
be shifted. The remainder of the
address
All 32 bits of the first operand partic
ipate in the shift. Bits shifted out of
bit position
lost.
bit positions on the right.
unchanged.
Program Exceptions: None.
SHIFT RIGHT DOUBLE
o 8 12 16
The 63-bit numeric part of the signed
first operand is shifted right the
number of bits specified by the second
operand address, and the result is
placed at the first-operand location.
Bits 12-15
ignored.
of the instruction are
The R\ field designates an even-odd pair
of general registers and must designate
an even-numbered register; otherwise, a
specification exception is recognized.
The second-operand address is not used
to address data; its rightmost six bits
indicate the number of bit positions to
be shifted. The remainder of the
address is ignored.
The first operand is treated as a 64-bit
signed binary integer. The sign posi
tion of the even-numbered register
remains unchanged. The leftmost bit
position of the odd-numbered register
contains a numeric bit, which partic
ipates in the
as the other numeric bits.
out of bit position 31 of the odd
numbered register are not inspected and
are lost. Bits equal to the sign are
supplied to the vacated bit positions on
the left.
Resulting
1
2
3
Result zero
Result less than zero
Result greater than zero
Program Exceptions:
The 64-bit first operand is shifted
right the number of bits specified by
the second-operand address, and the
result is placed at the first-operand
location.
ignored.
of the instruction are
The R\ field designates an even-odd
an even-numbered register; otherwise, a
specification exception is recognized.
The second-operand address is not used
to address data; its rightmost six bits
indicate the number of bit positions to
be shifted. The remainder of the
address is ignored.
All 64 bits of the first operand partic
ipate in the shift. Bits shifted out of
bit position 31 of the odd-numbered
register are not inspected and are lost.
positions on the left.
Program Exceptions:
Specification
The code remains