<< Previous | Next >>

CP JKHL,BCDE     Compare     Rabbit 4000/5000 Instruction

Opcode
Instruction
Operation
ED 58 CP JKHL,BCDE JKHL - BCDE

8-Bit Access
16-Bit Unaligned
16-Bit Aligned
Rabbit 4000
4
n/a
n/a
Rabbit 5000
4
4
2

Flags ALTD IOI/IOE
S
Z
L/V
C
F
R
SP
S
D
·
·
V
·
·

Description

Compares JKHL with BCDE. These compares are accomplished by subtracting BCDE from JKHL. The result is:


BCDE > JKHL : S=1, C=1, Z=0, L/V=V
BCDE = JKHL : S=0, C=0, Z=1, L/V=V
BCDE < JKHL : S=0, C=0, Z=0, L/V=V

where "V" indicates that the overflow flag is set on an arithmetic overflow result. That is, the overflow flag is set when the operands have different signs and the sign of the result is different from the argument you are subtracting from (JKHL in this case). For example, the overflow flag will be set after the compare instruction if JKHL contains 0x80000000 and BCDE contains 0x00000001. The result of the subtraction is 0x7FFFFFFF, which has a different sign than 0x80000000.

This operation does not affect JKHL or BCDE.


Rabbit Instructions << Previous | Next >> rabbit.com