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. .... ...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. ...> .... ...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. .... ...> .... ...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 .... ...> (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 .... .... ...> (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 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 (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 TBZ (abs16)bp,label TBZ if(mem8(abs16)bp=0),PC+9+d7(label)+H → PC 0 0 9 7/8 1110 0bp. .... ...> 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. ...> .... ...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. .... ...> .... ...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. 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. ...> 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. .... ...> 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 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. ...> 0011 if(mem8(IOTOP+io8)bp=1),PC+7 → PC *1 *5 0 → mem8(SP+2).bp6-2, *3 d12 sign-extension
*5 aa=abs18.17 - 16