Xvii - 20 – Panasonic MN101C77C User Manual
Page 520
Chapter 17 Appendices
XVII - 20
Instruction Set
MN101C SERIES INSTRUCTION SET
Group
Mnemonic
Operation
Flag
VF NF CF ZF
Code
Size
Cycle Re-
peat
Machine Code
Notes
1
2
3
4
5
6
7
8
9
10
11
Exten-
sion
TBNZ (abs8)bp,label
if(mem8(abs8)bp=1),PC+8+d11(label)+H
→
PC 0
0
8
6/7
0001 1bp. <abs 8..> <d11
....
...H
0011
if(mem8(abs8)bp=0),PC+8
→
PC
TBNZ (io8)bp,label
if(mem8(io)bp=1),PC+8+d11(label)+H
→
PC 0
0
8
6/7
0101 1bp. <io8
...> <d11
....
...H
0011
if(mem8(io)bp=0),PC+8
→
PC
TBNZ (abs16)bp,label
*2
*2
*2
if(mem8(abs16)bp=1),PC+10+d11(label)+H
→
PC 0
0
10 7/8
1111 1bp. <abs 16..
....
...> <d11
....
...H
0011
if(mem8(abs16)bp=0),PC+10
→
PC
JSR (An)
JSR
SP-3
→
SP,(PC+3).bp7-0
→
mem8(SP) --- --- --- --- 3
7
0001 00A1
0010
(PC+3).bp15-8
→
mem8(SP+1)
(PC+3).H
→
mem8(SP+2).bp7,
0
→
mem8(SP+2).bp6-2,
(PC+3).bp17-16
→
mem8(SP+2).bp1-0
0
→
PC.bp17-16
An
→
PC.bp15-0,0
→
PC.H
JSR label
SP-3
→
SP,(PC+5).bp7-0
→
mem8(SP) --- --- --- --- 5
6
0001 000H <d12
....
...>
(PC+5).bp15-8
→
mem8(SP+1)
(PC+5).H
→
mem8(SP+2).bp7,
0
→
mem8(SP+2).bp6-2,
(PC+5).bp17-16
→
mem8(SP+2).bp1-0
PC+5+d12(label)+H
→
PC
JSR label
SP-3
→
SP,(PC+6).bp7-0
→
mem8(SP) --- --- --- --- 6
7
0001 001H <d16
....
....
...>
(PC+6).bp15-8
→
mem8(SP+1)
(PC+6).H
→
mem8(SP+2).bp7,
0
→
mem8(SP+2).bp6-2,
(PC+6).bp17-16
→
mem8(SP+2).bp1-0
PC+6+d16(label)+H
→
PC
JSR label
*3
*4
*5
SP-3
→
SP,(PC+7).bp7-0
→
mem8(SP) --- --- --- --- 7
8
1001 1aaH <abs 18.b p15~ 0..>
0011
(PC+7).bp15-8
→
mem8(SP+1)
(PC+7).H
→
mem8(SP+2).bp7,
0
→
mem8(SP+2).bp6-2,
(PC+7).bp17-16
→
mem8(SP+2).bp1-0
abs18(label)+H
→
PC
JSRV (tbl4)
SP-3
→
SP,(PC+3).bp7-0
→
mem8(SP)
--- --- --- --- 3
9
1111 1110 <t4>
(PC+3).bp15-8
→
mem8(SP+1)
(PC+3).H
→
mem8(SP+2).bp7
(PC+3).bp17-16
→
mem8(SP+2).bp1-0
mem8(x'004080+tbl4<<2)
→
PC.bp7-0
mem8(x'004080+tbl4<<2+1)
→
PC.bp15-8
mem8(x'004080+tbl4<<2+2).bp7
→
PC.H
mem8(x'004080+tbl4<<2+2).bp1-0
→
PC.bp17-16
*2 d11 sign-extension
*4 d16 sign-extension
*5 aa=abs18.17 - 16
TBZ (abs16)bp,label
TBZ
if(mem8(abs16)bp=0),PC+9+d7(label)+H
→
PC 0
0
9
7/8
1110 0bp. <abs 16..
....
...>
<d7. ...H
0011
if(mem8(abs16)bp=1),PC+9
→
PC
TBZ (io8)bp,label
if(mem8(IOTOP+io8)bp=0),PC+8+d11(label)+H
→
PC 0
0
8
6/7
0100 1bp. <io8
...> <d11
....
...H
0011
if(mem8(IOTOP+io8)bp=1),PC+8
→
PC
TBZ (abs16)bp,label
if(mem8(abs16)bp=0),PC+10+d11(label)+H
→
PC 0
0
10 7/8
1110 1bp. <abs 16..
....
...> <d11
....
...H
0011
if(mem8(abs16)bp=1),PC+10
→
PC
TBNZ (abs8)bp,label
TBNZ
if(mem8(abs8)bp=1),PC+7+d7(label)+H
→
PC 0
0
7
6/7
0001 0bp. <abs 8..> <d7. ...H
0011
if(mem8(abs8)bp=0),PC+7
→
PC
TBNZ (io8)bp,label
if(mem8(io)bp=1),PC+7+d7(label)+H
→
PC 0
0
7
6/7
0101 0bp. <io8
...>
<d7. ...H
0011
if(mem8(io)bp=0),PC+7
→
PC
TBNZ (abs16)bp,label
*1
*2
*2
*1
*1
*1
if(mem8(abs16)bp=1),PC+9+d7(label)+H
→
PC 0
0
9
7/8
1111 0bp. <abs 16..
....
...>
<d7. ...H
0011
if(mem8(abs16)bp=0),PC+9
→
PC
JMP (An)
JMP
0
→
PC.17-16,An
→
PC.15-0,0
→
PC.H
--- --- --- --- 3
4
0001 00A0
0010
JMP label
abs18(label)+H
→
PC
--- --- --- --- 7
5
1001 0aaH <abs 18.b p15~ 0..>
0011
NOP
NOP
PC+2
→
PC
--- --- --- --- 2
1
0000 0000
*1 d7 sign-extension
TBZ (io8)bp,label
if(mem8(IOTOP+io8)bp=0),PC+7+d7(label)+H
→
PC 0
0
7
6/7
0100 0bp. <io8
...>
<d7. ...H
0011
if(mem8(IOTOP+io8)bp=1),PC+7
→
PC
*1
*5
0
→
mem8(SP+2).bp6-2,
*3 d12 sign-extension