UM10429
All information provided in this document is subject to legal disclaimers.
© NXP B.V. 2010. All rights reserved.
User manual
Rev. 1 — 20 October 2010
214 of 258
NXP Semiconductors
UM10429
Chapter 19: Appendix LPC1102 ARM Cortex-M0 reference
19.4.5.4.1
Syntax
CMN
Rn
,
Rm
CMP
Rn
,
#imm
CMP
Rn
,
Rm
where:
Rn
is the register holding the first operand.
Rm
is the register to compare with.
imm
is the immediate value to compare with.
19.4.5.4.2
Operation
These instructions compare the value in a register with either the value in another register
or an immediate value. They update the condition flags on the result, but do not write the
result to a register.
The CMP instruction subtracts either the value in the register specified by
Rm
, or the
immediate
imm
from the value in
Rn
and updates the flags. This is the same as a SUBS
instruction, except that the result is discarded.
The CMN instruction adds the value of
Rm
to the value in
Rn
and updates the flags. This
is the same as an ADDS instruction, except that the result is discarded.
19.4.5.4.3
Restrictions
For the:
•
CMN
instruction
Rn
, and
Rm
must only specify R0-R7.
•
CMP instruction:
– Rn
and
Rm
can specify R0-R14
–
immediate must be in the range 0-255.
19.4.5.4.4
Condition flags
These instructions update the N, Z, C and V flags according to the result.
19.4.5.4.5
Examples
CMP
R2, R9
CMN
R0, R2
19.4.5.5 MOV and MVN
Move and Move NOT.
19.4.5.5.1
Syntax
MOV{S}
Rd
,
Rm
MOVS
Rd
, #
imm