DO
Instruction Format:
DO
S, expr
Opcode:
23
20 19
0
0
0
0
Instruction Fields:
S=6-bit Source operand = DDDDDD,
expr=16-bit Absolute Address in 24-bit extension word
Source
D D D D D D
X0
0 0 0 1 0 0
X1
0 0 0 1 0 1
Y0
0 0 0 1 1 0
Y1
0 0 0 1 1 1
A0
0 0 1 0 0 0
B0
0 0 1 0 0 1
A2
0 0 1 0 1 0
B2
0 0 1 1 0 0
A1
0 0 1 1 0 1
A
0 0 1 1 1 0
B
0 0 1 1 1 1
where rrr=Rn register
where nnn=Nn register
where mmm=Mn register
*For
DO SP, expr
Thus, if SP=3, the execution of the DO SP,expr instruction will load the loop
counter (LC) with the value LC=4.
**For DO SSL, expr The loop counter (LC) will be loaded with its previous value
A - 96
INSTRUCTION DESCRIPTIONS
Start Hardware Loop
16 15
0
1
1
0
1
1
D
ABSOLUTE ADDRESS EXTENSION
S
S/L
Source
no
SR
no
OMR
no
SP*
no
SSL**
no
LA
no
LC
no
R0-R7
no
N0-N7
no
M0-M7
yes [see Notes on page A-97]
yes [see Notes on page A-97]
The actual value that will be loaded into the loop counter (LC) is
the value of the stack pointer (SP) before the execution of the
DO instruction, incremented by 1.
which was saved on the stack by the DO instruction itself.
INSTRUCTION SET DETAILS
8
7
D
D
D
D
D
D
0
D D D D D D
1 1 1 0 0 1
1 1 1 0 1 0
1 1 1 0 1 1
1 1 1 1 0 1
1 1 1 1 1 0
1 1 1 1 1 1
0 1 0 r
0 1 1 n n n
1 0 0 m m m
DO
0
0
0
0
0
0
0
r
r
MOTOROLA