rotr

Rotate right

Sets $t1 to $t2 rotated right by a fixed amount of 0 to 31 bits, with bits leaving the right end re-entering on the left.

Forms

  • rotr , ,

Operands

$t1
Any general-purpose register, $0 to $31, using its numeric or named spelling, such as $8 or $t0 ($zero is $0; $ra is $31).
$t2
A general-purpose register. It may be the same register as $t1.
imm5
An unsigned 5-bit immediate, 0 to 31, used for values such as a shift count.

Unlike 'srl', bits shifted off the right re-enter on the left rather than being discarded, so no information is lost. Encoded as 'srl' with bit 21 set.

# Shift or rotate an initialized word; inspect $t2: 0x20000001.
li $t0, 0x12
rotr $t2, $t0, 4