Branch instructions let you specify an extended mnemonic code for the condition on which a branch is to occur. Thus, you avoid having to specify the mask value, that represents the condition code, required by the BC, BCR, and BRC machine instructions. The assembler translates the extended mnemonic code into the mask value, and then assembles it into the object code of the BC, BCR, or BRC machine instruction.
The extended branch mnemonics for the BC instruction require a base register; the extended mnemonics for the BCR and BRC instructions do not. The extended mnemonics for the BRC instruction begin with the letter "J", and are sometimes called "Jump" instructions, as indicated in Figure 14.
Some typical extended mnemonic codes are given in Figure 14. They can be used as operation codes for branching instructions, replacing the BC, BCR, and BRC machine instruction codes (see 1 in Figure 14). Note that the first operand (see 2 in Figure 14) of the BC, BCR, and BRC instructions must not be present in the operand field (see 3 in Figure 14) of the extended mnemonic branching instructions.
Extended Code Meaning Format (Symbolic) Machine
Instruction Equivalent
-----------------------------------------------------------------------------------------------------------------------------
3 4 1
| V | *---- 2
| *-------* V V
B *->D2(X2,B2) * Unconditional Branch RX BC 15,D2(X2,B2)
BR R2 * RR BCR 15,R2
J label Unconditional Jump RI BRC 15,label
NOP D2(X2,B2) * No Operation RX BC 0,D2(X2,B2)
NOPR R2 | RR BCR 0,R2
JNOP label * RI BRC 0,label
Used After Compare Instructions
BH D2(X2,B2) * Branch on High RX BC 2,D2(X2,B2)
BHR R2 * RR BCR 2,R2
JH label Jump on High RI BRC 2,label
BL D2(X2,B2) * Branch on Low RX BC 4,D2(X2,B2)
BLR R2 * RR BCR 4,R2
JL label Jump on Low RI BRC 4,label
BE D2(X2,B2) * Branch on Equal RX BC 8,D2(X2,B2)
BER R2 * RR BCR 8,R2
JE label Jump on Equal RI BRC 8,label
BNH D2(X2,B2) * Branch on Not High RX BC 13,D2(X2,B2)
BNHR R2 * RR BCR 13,R2
JNH label Jump on Not High RI BRC 13,label
BNL D2(X2,B2) * Branch on Not Low RX BC 11,D2(X2,B2)
BNLR R2 * RR BCR 11,R2
JNL label Jump on Not Low RI BRC 11,label
BNE D2(X2,B2) * Branch on Not Equal RX BC 7,D2(X2,B2)
BNER R2 * RR BCR 7,R2
JNE label Jump on Not Equal RI BRC 7,label
Used After Arithmetic Instructions
BP D2(X2,B2) * Branch on Plus RX BC 2,D2(X2,B2)
BPR R2 * RR BCR 2,R2
JP label Jump on Plus RI BRC 2,label
BM D2(X2,B2) * Branch on Minus RX BC 4,D2(X2,B2)
BMR R2 * RR BCR 4,R2
JM label Jump on Minus RI BRC 4,label
BZ D2(X2,B2) * Branch on Zero RX BC 8,D2(X2,B2)
BZR R2 * RR BCR 8,R2
JZ label Jump on Zero RI BRC 8,label
BO D2(X2,B2) * Branch on Overflow RX BC 1,D2(X2,B2)
BOR R2 * RR BCR 1,R2
JO label Jump on Overflow RI BRC 1,label
BNP D2(X2,B2) * Branch on Not Plus RX BC 13,D2(X2,B2)
BNPR R2 * RR BCR 13,R2
JNP label Jump on Not Plus RI BRC 13,label
BNM D2(X2,B2) * Branch on Not Minus RX BC 11,D2(X2,B2)
BNMR R2 * RR BCR 11,R2
JNM label Jump on Not Minus RI BRC 11,label
BNZ D2(X2,B2) * Branch on Not Zero RX BC 7,D2(X2,B2)
BNZR R2 * RR BCR 7,R2
JNZ label Jump on Not Minus RI BRC 7,label
BNO D2(X2,B2) * Branch on No Overflow RX BC 14,D2(X2,B2)
BNOR R2 * RR BCR 14,R2
JNO label Jump on No Overflow RI BRC 14,label
Used After Test Under Mask Instructions BO D2(X2,B2) * Branch if Ones RX BC 1,D2(X2,B2) BOR R2 * RR BCR 1,R2 BM D2(X2,B2) * Branch if Mixed RX BC 4,D2(X2,B2) BMR R2 * RR BCR 4,R2 BZ D2(X2,B2) * Branch if Zero RX BC 8,D2(X2,B2) BZR R2 * RR BCR 8,R2 BNO D2(X2,B2) * Branch if Not Ones RX BC 14,D2(X2,B2) BNOR R2 * RR BCR 14,R2 BNM D2(X2,B2) * Branch if Not Mixed RX BC 11,D2(X2,B2) BNMR R2 * RR BCR 11,R2 BNZ D2(X2,B2) * Branch if Not Zero RX BC 7,D2(X2,B2) BNZR R2 * RR BCR 7,R2 Branch Relative on Condition Long BRUL label Unconditional Br Rel Long RIL BRCL 15,label BRHL label Br Rel Long on High RIL BRCL 2,label BRLL label Br Rel Long on Low RIL BRCL 4,label BREL label Br Rel Long on Equal RIL BRCL 8,label BRNHL label Br Rel Long on Not High RIL BRCL 13,label BRNLL label Br Rel Long on Not Low RIL BRCL 11,label BRNEL label Br Rel Long on Not Equal RIL BRCL 7,label BRPL label Br Rel Long on Plus RIL BRCL 2,label BRML label Br Rel Long on Minus RIL BRCL 4,label BRZL label Br Rel Long on Zero RIL BRCL 8,label BROL label Br Rel Long on Overflow RIL BRCL 1,label BRNPL label Br Rel Long on Not Plus RIL BRCL 13,label BRNML label Br Rel Long on Not Minus RIL BRCL 11,label BRNZL label Br Rel Long on Not Zero RIL BRCL 7,label BRNOL label Br Rel Long on Not Overflow RIL BRCL 14,label
Branch Relative on Condition
BRO label Branch on Overflow RI BRC 1,label
BRP label Branch on Plus RI BRC 2,label
BRH label Branch on High RI BRC 2,label
BRL label Branch on Low RI BRC 4,label
BRM label Branch on Minus RI BRC 4,label
BRNE label Branch on Not Equal RI BRC 7,label
BRNZ label Branch on Not Minus RI BRC 7,label
BRE label Branch on Equal RI BRC 8,label
BRZ label Branch on Zero RI BRC 8,label
BRNL label Branch on Not Low RI BRC 11,label
BRNM label Branch on Not Minus RI BRC 11,label
BRNH label Branch on Not High RI BRC 13,label
BRNP label Branch on Not Plus RI BRC 13,label
BRNO label Branch on No Overflow RI BRC 14,label
BRU label Unconditional Branch RI BRC 15,label
Jump on Condition Long
JLU label Unconditional Jump Long RIL BRCL 15,label
JLNOP label No operation RIL BRCL 0,label
JLH label Jump Long on High RIL BRCL 2,label
JLL label Jump Long on Low RIL BRCL 4,label
JLE label Jump Long on Equal RIL BRCL 8,label
JLNH label Jump Long on Not High RIL BRCL 13,label
JLNL label Jump Long on Not Low RIL BRCL 11,label
JLNE label Jump Long on Not Equal RIL BRCL 7,label
JLP label Jump Long on Plus RIL BRCL 2,label
JLM label Jump Long on Minus RIL BRCL 4,label
JLZ label Jump Long on Zero RIL BRCL 8,label
JLO label Jump Long on Overflow RIL BRCL 1,label
JLNP label Jump Long on Not Plus RIL BRCL 13,label
JLNM label Jump Long on Not Minus RIL BRCL 11,label
JLNZ label Jump Long on Not Zero RIL BRCL 7,label
JLNO label Jump Long on Not Overflow RIL BRCL 14,label
[ Top of Page | Previous Page | Next Page | Contents | Index ]