Chapter 18 Appendices
XVIII - 16
Instruction Set
18-3
Instruction Set
MN101C SERIES INSTRUCTION SET
Group
Data Move Instructions
Mnemonic
Operation
Flag
VF NF CF ZF
Code
Size
Cycle Re-
peat
Machine Code
Notes
1
2345
6789
10
11
Ext.
MOV
--
21
1010 DnDm
MOV imm8,Dm
imm8
→Dm
--
42
1010 DmDm <#8.
...>
MOV Dn,PSW
Dn
→PSW
33
1001 01Dn
0010
MOV PSW,Dm
PSW
→Dm
--
32
0001 01Dm
0010
MOV (An),Dm
mem8(An)
→Dm
--
22
0100 1ADm
MOV (d8,An),Dm
mem8(d8+An)
→Dm
--
42
0110 1ADm <d8.
...>
MOV (d16,An),Dm
mem8(d16+An)
→Dm
--
74
0110 1ADm <d16
....
...>
0010
MOV (d4,SP),Dm
mem8(d4+SP)
→Dm
--
32
0110 01Dm <d4>
MOV (d8,SP),Dm
*1
*2
*3
mem8(d8+SP)
→Dm
--
53
0110 01Dm <d8.
...>
0010
MOV (d16,SP),Dm
mem8(d16+SP)
→Dm
--
74
0110 00Dm <d16
....
...>
0010
MOV Dn,(io8)
Dn
→mem8(IOTOP+io8)
--
42
0111 00Dn <io8
...>
MOV Dn,(abs8)
Dn
→mem8(abs8)
--
42
0101 01Dn <abs 8..>
MOV Dn,(abs12)
Dn
→mem8(abs12)
--
52
0101 00Dn <abs 12..
...>
MOV Dn,(abs16)
Dn
→mem8(abs16)
--
74
1101 00Dn <abs 16..
....
...>
0010
MOV imm8,(io8)
imm8
→mem8(IOTOP+io8)
--
63
0000 0010 <io8
...>
<#8.
...>
MOV imm8,(abs8)
imm8
→mem8(abs8)
--
63
0001 0100 <abs 8..>
<#8.
...>
MOV imm8,(abs12)
imm8
→mem8(abs12)
--
73
0001 0101 <abs 12..
...>
<#8.
...>
MOV imm8,(abs16)
imm8
→mem8(abs16)
--
95
1101 1001 <abs 16..
....
...>
<#8.
...>
0011
MOV Dn,(HA)
Dn
→mem8(HA)
--
22
1101 00Dn
MOVW (abs16),DWm
mem16(abs16)
→DWm
--
75
1100 011d <abs 16..
....
...>
0010
MOVW (abs16),Am
mem16(abs16)
→Am
--
75
1100 010a <abs 16..
....
...>
0010
MOVW DWn,(Am)
DWn
→mem16(Am)
--
23
1111 00aD
MOVW An,(Am)
*4
An
→mem16(Am)
--
34
1111 10aA
0010
MOVW DWn,(d4,SP)
DWn
→mem16(d4+SP)
--
33
1111 011D <d4>
MOVW An,(d4,SP)
An
→mem16(d4+SP)
--
33
1111 010A <d4>
MOVW DWn,(d8,SP)
DWn
→mem16(d8+SP)
--
54
1111 011D <d8.
...>
0010
MOVW An,(d8,SP)
*2
*3
An
→mem16(d8+SP)
--
54
1111 010A <d8.
...>
0010
MOVW DWn,(d16,SP)
DWn
→mem16(d16+SP)
--
75
1111 001D <d16
....
...>
0010
MOVW An,(d16,SP)
An
→mem16(d16+SP)
--
75
1111 000A <d16
....
...>
0010
MOVW DWn,(abs8)
DWn
→mem16(abs8)
--
43
1101 011D <abs 8..>
MOVW An,(abs8)
An
→mem16(abs8)
--
43
1101 010A <abs 8..>
MOVW DWn,(abs16)
DWn
→mem16(abs16)
--
75
1101 011D <abs 16..
....
...>
0010
MOVW An,(abs16)
An
→mem16(abs16)
--
75
1101 010A <abs 16..
....
...>
0010
MOVW DWn,(HA)
DWn
→mem16(HA)
--
23
1001 010D
MOVW An,(HA)
An
→mem16(HA)
--
23
1001 011A
MOVW imm8,DWm
sign(imm8)
→DWm
--
42
0000 110d <#8.
...>
MOVW imm8,Am
*5
*6
*1
d8 sign-extension
*2
d4 zero-extension
*3
d8 zero-extension
*4 A=An, a=Am
*5 #8 sign-extension
*6 #8 zero-extension
zero(imm8)
→Am
--
42
0000 111a <#8.
...>
MOVW imm16,DWm
imm16
→DWm
--
63
1100 111d <#16
....
...>
MOVW (An),DWm
MOVW
mem16(An)
→DWm
--
23
1110 00Ad
MOVW (An),Am
mem16(An)
→Am
--
34
1110 10Aa
0010
MOVW (d4,SP),DWm
mem16(d4+SP)
→DWm
--
33
1110 011d <d4>
MOVW (d4,SP),Am
mem16(d4+SP)
→Am
--
33
1110 010a <d4>
MOVW (d8,SP),DWm
mem16(d8+SP)
→DWm
--
54
1110 011d <d8.
...>
0010
MOVW (d8,SP),Am
*4
*2
*3
mem16(d8+SP)
→Am
--
54
1110 010a <d8.
...>
0010
MOVW (d16,SP),DWm
mem16(d16+SP)
→DWm
--
75
1110 001d <d16
....
...>
0010
MOVW (d16,SP),Am
mem16(d16+SP)
→Am
--
75
1110 000a <d16
....
...>
0010
MOVW (abs8),DWm
mem16(abs8)
→DWm
--
43
1100 011d <abs 8..>
MOVW (abs8),Am
mem16(abs8)
→Am
--
43
1100 010a <abs 8..>
MOV (io8),Dm
mem8(IOTOP+io8)
→Dm
--
42
0110 00Dm <io8
...>
MOV (abs8),Dm
mem8(abs8)
→Dm
--
42
0100 01Dm <abs 8..>
MOV (abs12),Dm
mem8(abs12)
→Dm
--
52
0100 00Dm <abs 12..
...>
MOV (abs16),Dm
mem8(abs16)
→Dm
--
74
1100 00Dm <abs 16..
....
...>
0010
MOV Dn,(Am)
Dn
→mem8(Am)
--
22
0101 1aDn
MOV Dn,(d8,Am)
Dn
→mem8(d8+Am)
--
42
0111 1aDn <d8.
...>
MOV Dn,(d16,Am)
Dn
→mem8(d16+Am)
--
74
0111 1aDn <d16
....
...>
0010
MOV Dn,(d4,SP)
Dn
→mem8(d4+SP)
--
32
0111 01Dn <d4>
MOV Dn,(d8,SP)
*1
*2
*3
Dn
→mem8(d8+SP)
--
53
0111 01Dn <d8.
...>
0010
MOV Dn,(d16,SP)
Dn
→mem8(d16+SP)
--
74
0111 00Dn <d16
....
...>
0010
MOV Dn,Dm
Dn
→Dm