10
The 68000's Instruction Set
Destination operand addressing modes
Bcc Branch on condition cc
Operation: If cc = 1 THEN [PC] ← [PC] + d
Syntax: Bcc <label>
Sample syntax: BEQ Loop_4
BVC *+8
Attributes: BEQ takes an 8-bit or a 16-bit offset (i.e., displacement).
Description: If the specified logical condition is met, program execution
continues at location [PC] + displacement, d. The displacement is
a twos complement value. The value in the PC corresponds to
the current location plus two. The range of the branch is -126 to
+128 bytes with an 8-bit offset, and -32K to +32K bytes with a 16-
bit offset. A short branch to the next instruction is impossible,
since the branch code 0 indicates a long branch with a 16-bit
offset. The assembly language form BCC *+8 means branch to the
point eight bytes from the current PC if the carry bit is clear.
BCC branch on carry clear C
BCS branch on carry set C
BEQ branch on equal Z
BGE branch on greater than or equal N.V + N.V
BGT branch on greater than N.V.Z + N.V.Z
BHI branch on higher than C.Z
BLE branch on less than or equal Z + N.V + N.V
BLS branch on lower than or same C + Z
BLT branch on less than N.V + N.V
BMI branch on minus (i.e., negative) N
BNE branch on not equal Z
BPL branch on plus (i.e., positive) N
BVC branch on overflow clear V
BVS branch on overflow set V
Note that there are two types of conditional branch instruction: