SFR ACC,#1..16
6-325
SFR ACC,#1..16
Shift Accumulator Right
SYNTAX OPTIONS
OPCODE
OBJMODE
RPT
CYC
SFR ACC,#1..16
1111 1111 0100 SHFT
X
Y
N+1
Operands
ACC
Accumulator register
#1..16
Shift value
Description
Right shift the content of the ACC register by the amount specified in the shift
field. The type of shift (arithmetic or logical) is determined by the state of the
sign extension mode (SXM) bit:
if(SXM = 1) // sign extension mode enabled
ACC = S:ACC >> shift value; // arithmetic shift right
else //sign extension mode disabled
ACC = 0:ACC >> shift value; // logical shift right
Flags and
Modes
Z
After the shift, the Z flag is set if the ACC value is zero, else Z is cleared.
N
After the shift, the N flag is set if bit 31 of the ACC is 1, else N is cleared.
C
The last bit shifted out is loaded into the C flag bit.
SXM
If (SXM = 1), then the operation behaves like an arithmetic right shift.
If (SXM = 0), then the operation behaves like a logical right shift.
Repeat
This instruction is repeatable. If the operation follows a RPT instruction, then
the SFR instruction will be executed N+1 times. The state of the Z, N and C
flags will reflect the final result.
Example
; Arithmetic shift right contents of VarA by 10:
MOVL ACC,@VarA
; ACC = VarA
SETC SXM
; Enable sign extension mode
SFR ACC,#10
; Arithmetic shift right ACC by 10
MOVL @VarA,ACC
; Store result into VarA
Содержание TMS320C28x
Страница 30: ...1 12...
Страница 80: ...This page intentionally left blank 2 50 This page intentionally left blank...
Страница 269: ...IN loc16 PA 6 112 MOV AL 0 AL 0 UOUT IORegC AL IOspace IORegC AL 10...
Страница 308: ...MAXCUL P loc32 6 151 Saturate MOVL Var64 2 ACC Store result into Var64 MOVL Var64 P...
Страница 509: ...SUBL ACC P PM 6 352 SUBL ACC P PM ACC S B 11 M X 4 MOVH Y ACC 5 Store Q15 result into Y...
Страница 585: ...This page intentionally left blank 7 32 This page intentionally left blank...