Difference between revisions of "BNEQ"
Line 10: | Line 10: | ||
The Branch If Not Equal opcode (BNEQ) is a two-decle opcode that is a part of the [[Branch]] family of opcodes. It is also known by the name Branch If Not Zero (BNZ) because a test for inequality is functionally equivalent to a test for a non-zero result. Essentially, to test inequality, the [[CMP]] type of operations subtract operand #2 from operand #1 and if the result is non-zero, then the operands must not be equal. This instruction causes the [[CP1610]] to branch if the [[Zero Flag]] is clear to the address specified by the following parameters.<br/> | The Branch If Not Equal opcode (BNEQ) is a two-decle opcode that is a part of the [[Branch]] family of opcodes. It is also known by the name Branch If Not Zero (BNZ) because a test for inequality is functionally equivalent to a test for a non-zero result. Essentially, to test inequality, the [[CMP]] type of operations subtract operand #2 from operand #1 and if the result is non-zero, then the operands must not be equal. This instruction causes the [[CP1610]] to branch if the [[Zero Flag]] is clear to the address specified by the following parameters.<br/> | ||
− | Format - Decle #1 Format - Word #2 ( | + | Format - Decle #1 Format - Word #2 (All 16 bits are significant) |
0000:0010:00d0:1100 aaaa:aaaa:aaaa:aaaa<br/> | 0000:0010:00d0:1100 aaaa:aaaa:aaaa:aaaa<br/> | ||
where:<br/> | where:<br/> |
Revision as of 18:50, 12 January 2005
Instruction Name | Branch If Not Equal Branch If Not Zero |
Mnemonics | BNEQ/BNZ |
CP1610 Clock Cycles | 7 or 9 |
Interruptible | Yes |
Opcode Range | $020C, $022C |
The Branch If Not Equal opcode (BNEQ) is a two-decle opcode that is a part of the Branch family of opcodes. It is also known by the name Branch If Not Zero (BNZ) because a test for inequality is functionally equivalent to a test for a non-zero result. Essentially, to test inequality, the CMP type of operations subtract operand #2 from operand #1 and if the result is non-zero, then the operands must not be equal. This instruction causes the CP1610 to branch if the Zero Flag is clear to the address specified by the following parameters.
Format - Decle #1 Format - Word #2 (All 16 bits are significant) 0000:0010:00d0:1100 aaaa:aaaa:aaaa:aaaa
where:
d indicates the direction of the branch such that: d == 0 indicates to branch in the forward direction d == 1 indicates to branch in the reverse direction
aaaaaaaaaaaaaaaa indicates the amount of offset
See the Branch opcode family documentation for more information.