BNEQ

From Intellivision Wiki
Revision as of 02:16, 12 October 2007 by Mr z (talk | contribs)
Jump to: navigation, search
Instruction NameBranch If Not Equal
Branch If Not Zero
MnemonicsBNEQ/BNZE
CP1610 Clock Cycles7 or 9
InterruptibleYes
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 (BNZE) 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.