Rev. 1.50, 10/04, page 300 of 448
10.1.55 ROTL (Rotate Left): Shift Instruction
Format Operation Instruction Code Cycle T Bit
ROTL Rn T ← Rn ← MSB 0100nnnn00000100 1 MSB
Description: This instruction rotates the contents of general register Rn one bit to the left, and
stores the result in Rn. The bit rotated out of the operand is transferred to the T bit.
MSB LSB
ROTL
T
Notes: None
Operation:
ROTL(long n) /* ROTL Rn */
{
if ((R[n]&0x80000000)==0) T = 0;
else T = 1;
R[n] <<= 1;
if (T==1) R[n] |= 0x00000001;
else R[n] &= 0xFFFFFFFE;
PC += 2;
}
Example:
ROTL R0 ;Before execution R0 = H'80000000, T = 0
;After execution R0 = H'00000001, T = 1