Datasheet
C
19 0
MSB
0000
15
LSB
C
19 0
MSB LSB
16
www.ti.com
Instruction Set Description
4.6.3.25 RRAM
RRAM.A Rotate right arithmetically the 20-bit CPU register content
RRAM.[W] Rotate right arithmetically the 16-bit CPU register content
RRAM.A #n,Rdst
Syntax 1 ≤ n ≤ 4
RRAM.W #n,Rdst or RRAM #n,Rdst
1 ≤ n ≤ 4
Operation MSB → MSB → MSB–1 ... LSB+1 → LSB → C
Description The destination operand is shifted right arithmetically by one, two, three, or four bit
positions as shown in Figure 4-46. The MSB retains its value (sign). RRAM operates
equal to a signed division by 2/4/8/16. The MSB is retained and shifted into MSB-1. The
LSB+1 is shifted into the LSB, and the LSB is shifted into the carry bit C. The word
instruction RRAM.W clears the bits Rdst.19:16.
Note : This instruction does not use the extension word.
Status Bits N: Set if result is negative
.A: Rdst.19 = 1, reset if Rdst.19 = 0
.W: Rdst.15 = 1, reset if Rdst.15 = 0
Z: Set if result is zero, reset otherwise
C: Loaded from the LSB (n = 1), LSB+1 (n = 2), LSB+2 (n = 3), or LSB+3 (n = 4)
V: Reset
Mode Bits OSCOFF, CPUOFF, and GIE are not affected.
Example The signed 20-bit number in R5 is shifted arithmetically right two positions.
RRAM.A #2,R5 ; R5/4 -> R5
Example The signed 20-bit value in R15 is multiplied by 0.75. (0.5 + 0.25) × R15.
PUSHM.A #1,R15 ; Save extended R15 on stack
RRAM.A #1,R15 ; R15 y 0.5 -> R15
ADDX.A @SP+,R15 ; R15 y 0.5 + R15 = 1.5 y R15 -> R15
RRAM.A #1,R15 ; (1.5 y R15) y 0.5 = 0.75 y R15 -> R15
Figure 4-46. Rotate Right Arithmetically RRAM[.W] and RRAM.A
241
SLAU144J–December 2004–Revised July 2013 CPUX
Submit Documentation Feedback
Copyright © 2004–2013, Texas Instruments Incorporated