NOP {*ind}{ARPn}
6-250
NOP {*ind}{ARPn}
No Operation With Optional Indirect Address Modification
SYNTAX OPTIONS
OPCODE
OBJMODE
RPT
CYC
NOP {*ind}{,ARPn}
0111 0111 LLLL LLLL
X
Y
N+1
Operands
{*ind}
Indirect address mode (see chapter 5)
ARPn
Auxiliary register pointer (ARP0 to ARP7)
Description
Modify the indirect address operand as specified and change the auxiliary
register pointer (ARP) to the given auxiliary register. If no operands are
given, then do nothing.
Flags and
Modes
None
Repeat
This instruction is repeatable. If this instruction follows the RPT instruction, it
will execute N+1 times.
Example
; Copy the contents of Array1 to Array2:
; int32 Array1[N];
; int32 Array2[N];
; for(i=0; i < N; i++)
; Array2[i] = Array1[i];
; This example only works for code located in upper 64K
; of program space:
MOVL XAR2,#Array1
; XAR2 = pointer to Array1
MOVL XAR3,#Array2
; XAR3 = pointer to Array2
MOV @AR0,#(N−1)
; Repeat loop N times
NOP *,ARP2
; Point to XAR2 (ARP = 2)
SETC AMODE
; Full C2xLP address mode compatible
Loop:
MOVL ACC,*
; ACC = Array1[i]
NOP *++,ARP3
; Increment XAR2 and point to XAR3
RPT #19
; Do nothing for 20 cycles
||NOP
MOVL *++,ACC,ARP0
; Array2[i] = ACC, point to XAR0
XBANZ Loop,*−−,ARP2
; Loop if AR[ARP] != 0, AR[ARP]−−,
; point to XAR2
Содержание 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...