UM10462
All information provided in this document is subject to legal disclaimers.
© NXP B.V. 2016. All rights reserved.
User manual
Rev. 5.5 — 21 December 2016
468 of 523
NXP Semiconductors
UM10462
Chapter 24: LPC11U3x/2x/1x Appendix ARM Cortex-M0
ADD{S} {
Rd
,}
Rn
,
<Rm|#imm>
RSBS {
Rd
,}
Rn
,
Rm
,
#0
SBCS {
Rd
,}
Rn
,
Rm
SUB{S} {
Rd
,}
Rn
,
<
Rm
|
#imm
>
Where:
S causes an ADD or SUB instruction to update flags
Rd
specifies the result register
Rn
specifies the first source register
Rm
specifies the second source register
imm
specifies a constant immediate value.
When the optional
Rd
register specifier is omitted, it is assumed to take the same value as
Rn
, for example ADDS R1,R2 is identical to ADDS R1,R1,R2.
24.4.5.1.2
Operation
The ADCS instruction adds the value in
Rn
to the value in
Rm
, adding a further one if the
carry flag is set, places the result in the register specified by
Rd
and updates the N, Z, C,
and V flags.
The ADD instruction adds the value in
Rn
to the value in
Rm
or an immediate value
specified by
imm
and places the result in the register specified by
Rd
.
The ADDS instruction performs the same operation as ADD and also updates the N, Z, C
and V flags.
The RSBS instruction subtracts the value in
Rn
from zero, producing the arithmetic
negative of the value, and places the result in the register specified by Rd and updates the
N, Z, C and V flags.
The SBCS instruction subtracts the value of
Rm
from the value in
Rn
, deducts a further
one if the carry flag is set. It places the result in the register specified by Rd and updates
the N, Z, C and V flags.
The SUB instruction subtracts the value in
Rm
or the immediate specified by
imm
. It
places the result in the register specified by
Rd
.
The SUBS instruction performs the same operation as SUB and also updates the N, Z, C
and V flags.
Use ADC and SBC to synthesize multiword arithmetic, see
.
24.4.5.1.3
Restrictions
lists the legal combinations of register specifiers and immediate values that can
be used with each instruction.