User Manual
C166S V2
Detailed Instruction Description
User Manual
8-241
V 1.7, 2001-01
CMPI2
Integer Compare and Increment by 2
CMPI2
Group
Compare and Loop Control Instructions
Syntax
CMPI2 op1, op2
Source Operand(s)
op1, op2
→
WORD
Destination Operand(s)
op1
→
WORD
Operation
(op1)
⇔
(op2)
(op1)
←
(op1) + 2
Description
This instruction is used to enhance the performance and flexibility of loops. The source
operand specified by op1 is compared to the source operand specified by op2 by
performing a 2s complement binary subtraction of op2 from op1. Operand op1 may
specify ONLY GPR registers. Once the subtraction has completed, the operand op1 is
incremented by two. Using the set flags, a branch instruction can then be used in
conjunction with this instruction to form common high level language FOR loops of any
range.
CPU Flags
E
Set if the value of op2 represents the lowest possible negative number.
Cleared otherwise. Used to signal the end of a table.
Z
Set if result equals zero. Cleared otherwise.
V
Set if an arithmetic underflow occurred, i.e. the result cannot be
represented in the word data type. Cleared otherwise.
C
Set if a borrow is generated. Cleared otherwise.
N
Set if the most significant bit of the result is set. Cleared otherwise.
Encoding
E
Z
V
C
N
*
*
*
S
*
Mnemonic
Format
Bytes
CMPI2
Rw
n
, #data16
96 Fn ## ##
4
CMPI2
Rw
n
, #data4
90 #n
2
CMPI2
Rw
n
, mem
92 Fn MM MM
4
Summary of Contents for C166S V2
Page 102: ...User Manual C166S V2 C166S V2 Memory Organization User Manual 3 102 V 1 7 2001 01...
Page 116: ...User Manual C166S V2 Instruction Pipeline User Manual 4 116 V 1 7 2001 01...
Page 152: ...User Manual C166S V2 Interrupt and Exception Handling User Manual 5 152 V 1 7 2001 01...
Page 204: ...User Manual C166S V2 Instruction Set User Manual 7 204 V 1 7 2001 01...
Page 420: ...User Manual C166S V2 Detailed Instruction Description User Manual 8 420 V 1 7 2001 01...
Page 432: ...User Manual C166S V2 Summary of CPU Subsystem Registers User Manual 9 432 V 1 7 2001 01...
Page 437: ...437...