SPECIAL 000000 |
0 00000 |
rt |
rd |
sa |
SRA 000011 |
6 |
5 |
5 |
5 |
5 |
6 |
SRA rd, rt, sa |
MIPS32 |
Shift Word Right Arithmetic |
Shift Word Right Arithmetic
To execute an arithmetic right-shift of a word by a fixed number of bits.
GPR[rd] = GPR[rt] >> sa (arithmetic)
The contents of the low-order 32-bit word of GPR rt are shifted right, duplicating the sign-bit (bit 31) in the emptied bits; the word result is sign-extended and placed in GPR rd. The bit-shift amount is specified by sa.
On 64-bit processors, if GPR rt does not contain a sign-extended 32-bit value (bits 63..31 equal), then the result of the operation is UNPREDICTABLE.
if NotWordValue(GPR[rt]) then UNPREDICTABLE endif s = sa temp = GPR[rt]31)s || GPR[rt]31..s GPR[rd] = sign_extend(temp)
None