Data Move in Data Memory
DMOV
7-67
Assembly Language Instructions
Cycles for a Single DMOV Instruction
Program
Operand
ROM
DARAM
SARAM
External
DARAM
1
1
1
1+p
SARAM
1
1
1, 3
†
1+p
External
‡
2+2d
2+2d
2+2d
5+2d+p
† If the operand and the code are in the same SARAM block
‡ If used on external memory, DMOV reads the specified memory location but performs no
operations.
Cycles for a Repeat (RPT) Execution of a DMOV Instruction
Program
Operand
ROM
DARAM
SARAM
External
DARAM
n
n
n
n+p
SARAM
2n–2
2n–2
2n–2, 2n+1
†
2n–2+p
External
‡
4n–2+2nd
4n–2+2nd
4n–2+2nd
4n+1+2nd+p
† If the operand and the code are in the same SARAM block
‡ If used on external memory, DMOV reads the specified memory location but performs no
operations.
Example 1
DMOV
DAT8
;(DP = 6)
Before Instruction
After Instruction
Data Memory
Data Memory
308h
43h
308h
43h
Data Memory
Data Memory
309h
2h
309h
43h
Example 2
DMOV
*,AR1
Before Instruction
After Instruction
ARP
0
ARP
1
AR0
30Ah
AR0
30Ah
Data Memory
Data Memory
30Ah
40h
30Ah 40h
Data Memory
Data Memory
30Bh
41h
30Bh
40h
Cycles