
MOTOROLA
4-6
INSTRUCTION SET
CPU32
REFERENCE MANUAL
Note: The following notation applies to this table only.
—
Not affected
U
Undefined
See special definition
General case
X = C
N = Rm
Z = Rm
...
R0
Sm
Dm
Rm
Source operand MSB
Destination operand MSB
Result operand MSB
Register tested
Shift count
Lower bound
Upper bound
R
r
LB
UB
4.3.2 Data Movement Instructions
The MOVE instruction is the basic means of transferring and storing address and data.
MOVE instructions transfer byte, word, and long-word operands from memory to
memory, memory to register, register to memory, and register to register. Address
movement instructions (MOVE or MOVEA) transfer word and long-word operands and
ensure that only valid address manipulations are executed.
In addition to the general MOVE instructions, there are several special data movement
instructions — move multiple registers (MOVEM), move peripheral data (MOVEP),
move quick (MOVEQ), exchange registers (EXG), load effective address (LEA), push
effective address (PEA), link stack (LINK), and unlink stack (UNLK).
Table 4-2
is a
summary of the data movement operations.
ASL
*
*
*
V = Dm
(Dm – 1
+
...
+
Dm – r) + Dm
(Dm-1
+
...
+
Dm – r)
C = Dm – r + 1
ASL (r = 0)
LSL, ROXL
LSR (r = 0)
ROXL (r = 0)
ROL
ROL (r = 0)
ASR, LSR, ROXR
ASR, LSR (r = 0)
ROXR (r = 0)
ROR
ROR (r = 0)
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
*
C = Dm – r + 1
—
—
—
—
*
—
—
—
—
C = X
C = Dm – r + 1
C = Dr – 1
C = X
C = Dr – 1
Table 4-2 Data Movement Operations
Instruction
Syntax
Rn, Rn
ea
, An
An, #
d
ea
,
ea
ea
, An
Operand Size
32
32
16, 32
8, 16, 32
16, 32
→
32
Operation
EXG
LEA
LINK
MOVE
MOVEA
Rn
→
Rn
ea
→
An
SP – 4
→
SP, An
→
(SP); SP
→
An, SP + d
→
SP
Source
→
Destination
Source
→
Destination
Table 4-1 Condition Code Computations (Continued)
Operations
X
N
Z
V
C
Special Definition
F
Freescale Semiconductor, Inc.
For More Information On This Product,
Go to: www.freescale.com
n
.