Group Addressing Mode Instruction Encoding
13-27
Assembly Language Instructions
13.4.4 Conditional-Branch Addressing Modes
Instructions using the conditional-branch addressing modes (B
cond, Bcond D,
CALL
cond, DBcond, and DBcond D) can perform a variety of conditional
operations. Bits 31–27 are set to the value of 01101, indicating conditional-branch
addressing mode instructions. Bit 26 is set to 0 or 1; 0 selects DB
cond, 1 selects
B
cond. Selection of bit 25 determines the conditional-branch addressing mode
(B). If B = 0, register addressing is used; if B = 1, PC-relative addressing is used.
Bit 21 sets the type of branch: D = 0 for a standard branch or D = 1 for a delayed
branch. The condition field (
cond) specifies the condition checked to determine
what action to take, that is, whether to branch (see Table 13–12 on page 13-30
for a list of condition codes). Figure 13–5 shows the encoding for conditional-
branch addressing.
Figure 13–5. Encoding for Conditional-Branch Addressing Modes
(a) DBcond (D)
31 26
25
24 22
21
20 16
15 5
4 0
0
1
1
0
1
1
B
AR
n
D
cond
0 0 0 0 0 0 0 0 0 0 0
src reg
0
1
1
0
1
1
B
AR
n
D
cond
immediate (PC relative)
(b) Bcond (D)
31 26
25
24 22
21
20 16
15 5
4 0
0
1
1
0
1
0
B
0 0 0
D
cond
0 0 0 0 0 0 0 0 0 0 0
src reg
0
1
1
0
1
0
B
0 0 0
D
cond
immediate (PC relative)
(c) CALLcond
31 26
25
24 22
21
20 16
15 5
4 0
0
1
1
1
0
0
B
0 0 0
0
cond
0 0 0 0 0 0 0 0 0 0 0
src reg
0
1
1
1
0
0
B
0 0 0
0
cond
immediate (PC relative)