
The Cortex-M4 Instruction Set
ARM DUI 0553A
Copyright © 2010 ARM. All rights reserved.
3-112
ID121610
Non-Confidential
3.8.3
SXTA and UXTA
Signed and Unsigned Extend and Add.
Syntax
op
{
cond
} {
Rd
,}
Rn
,
Rm
{, ROR #
n
}
op
{
cond
} {
Rd
,}
Rn
,
Rm
{, ROR #
n
}
where:
op
Is one of:
SXTAB
Sign extends an 8-bit value to a 32-bit value and add.
SXTAH
Sign extends a 16-bit value to a 32-bit value and add.
SXTAB16
Sign extends two 8-bit values to two 16-bit values and add.
UXTAB
Zero extends an 8-bit value to a 32-bit value and add.
UXTAH
Zero extends a 16-bit value to a 32-bit value and add.
UXTAB16
Zero extends two 8-bit values to two 16-bit values and add.
cond
Is an optional condition code, see
.
Rd
Specifies the destination register.
Rn
Specifies the first operand register.
Rm
Specifies the register holding the value to rotate and extend.
ROR #
n
Is one of:
ROR #8
Value from
Rm
is rotated right 8 bits.
ROR #16
Value from
Rm
is rotated right 16 bits.
ROR #24
Value from
Rm
is rotated right 24 bits.
If
ROR #
n
is omitted, no rotation is performed.
Operation
These instructions do the following:
1.
Rotate the value from
Rm
right by 0, 8, 16 or 24 bits.
2.
Extract bits from the resulting value:
•
SXTAB
extracts bits[7:0] from
Rm
and sign extends to 32 bits.
•
UXTAB
extracts bits[7:0] from
Rm
and zero extends to 32 bits.
•
SXTAH
extracts bits[15:0] from
Rm
and sign extends to 32 bits.
•
UXTAH
extracts bits[15:0] from
Rm
and zero extends to 32 bits.
•
SXTAB16
extracts bits[7:0] from
Rm
and sign extends to 16 bits, and extracts bits
[23:16] from
Rm
and sign extends to 16 bits.
•
UXTAB16
extracts bits[7:0] from
Rm
and zero extends to 16 bits, and extracts bits
[23:16] from
Rm
and zero extends to 16 bits.
3.
Adds the signed or zero extended value to the word or corresponding halfword of
Rn
and
writes the result in
Rd
.
Restrictions
Do not use SP and do not use PC.