MB90660A Series
Table 19 Branch 2 Instructions [19 Instructions]
Mnemonic
# ~ RG B
Operation
LH AH I S T N Z V C RMW
CBNE A, #imm8, rel
CWBNE A, #imm16, rel
3 *1 0
4 *1 0
0 Branch when byte (A) ≠ imm8
0 Branch when word (A) ≠ imm16
––––– * * * * –
––––– * * * * –
CBNE ear, #imm8, rel
4 *2 1
CBNE eam, #imm8, rel*9 4+ *3 0
CWBNE ear, #imm16, rel
5 *4 1
CWBNE eam, #imm16, rel*9 5+ *3 0
0 Branch when byte (ear) ≠ imm8
––––– * * * * –
(b) Branch when byte (eam) ≠ imm8 – – – – – * * * * –
0 Branch when word (ear) ≠ imm16 – – – – – * * * * –
(c) Branch when word (eam) ≠ imm16 – – – – – * * * * –
DBNZ
DBNZ
ear, rel
eam, rel
3 *5 2
0 Branch when byte (ear) =
(ear) – 1, and (ear) ≠ 0
3+ *6 2 2× (b) Branch when byte (eam) =
(eam) – 1, and (eam) ≠ 0
––––– * * *– –
––––– * * *– *
DWBNZ ear, rel
DWBNZ eam, rel
3 *5 2
0 Branch when word (ear) =
(ear) – 1, and (ear) ≠ 0
3+ *6
2
2× (c) Branch when word (eam) =
(eam) – 1, and (eam) ≠ 0
––––– * * *– –
––––– * * *– *
INT
INT
INTP
INT9
RETI
LINK
#vct8
addr16
addr24
#local8
UNLINK
2
3
4
1
20
16
17
20
0
0
0
0
1 15 0
8× (c)
6× (c)
6× (c)
8× (c)
6× (c)
Software interrupt
Software interrupt
Software interrupt
Software interrupt
Return from interrupt
– –RS– – – – – –
– –RS– – – – – –
– –RS– – – – – –
– –RS– – – – – –
––* * * * * * * –
26 0
15 0
(c) At constant entry, save old frame – – – – – – – – – –
pointer to stack, set new frame
pointer, and allocate local pointer
area
(c) At constant entry, retrieve old frame – – – – – – – – – –
pointer from stack.
RET *7
RETP *8
14 0
16 0
(c) Return from subroutine
(d) Return from subroutine
––––––––– –
––––––––– –
*1: 5 when branching, 4 when not branching
*2: 13 when branching, 12 when not branching
*3: 7 + (a) when branching, 6 + (a) when not branching
*4: 8 when branching, 7 when not branching
*5: 7 when branching, 6 when not branching
*6: 8 + (a) when branching, 7 + (a) when not branching
*7: Retrieve (word) from stack
*8: Retrieve (long word) from stack
*9: In the CBNE/CWBNE instruction, do not use the RWj+ addressing mode.
Note: For an explanation of “(a)” to “(d)”, refer to Table 4, “Number of Execution Cycles for Each Type of Addressing,”
and Table 5, “Correction Values for Number of Cycles Used to Calculate Number of Actual Cycles.”
76