EasyManuals Logo

NXP Semiconductors LPC1768 User Manual

NXP Semiconductors LPC1768
841 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Page #655 background imageLoading...
Page #655 background image
UM10360 All information provided in this document is subject to legal disclaimers. © NXP B.V. 2013. All rights reserved.
User manual Rev. 3 — 20 December 2013 655 of 841
NXP Semiconductors
UM10360
Chapter 34: Appendix: Cortex-M3 user guide
The permitted shift lengths depend on the shift type and the instruction, see the individual
instruction description or Section 34.2.3.3
. If the shift length is 0, no shift occurs. Register
shift operations update the carry flag except when the specified shift length is 0. The
following sub-sections describe the various shift operations and how they affect the carry
flag. In these descriptions, Rm is the register containing the value to be shifted, and n is
the shift length.
34.2.3.4.1 ASR
Arithmetic shift right by n bits moves the left-hand
32
-n bits of the register Rm, to the right
by n places, into the right-hand
32
-n bits of the result. And it copies the original bit[31] of
the register into the left-hand n bits of the result. See Figure 141
.
You can use the ASR #n operation to divide the value in the register Rm by 2
n
, with the
result being rounded towards negative-infinity.
When the instruction is
ASRS
or when ASR #n is used in Operand2 with the instructions
MOVS
,
MVNS
,
ANDS
,
ORRS
,
ORNS
,
EORS
,
BICS
,
TEQ
or
TST
, the carry flag is updated to the last bit
shifted out, bit[n-1], of the register Rm.
Note
• If n is 32 or more, then all the bits in the result are set to the value of bit[31] of Rm.
• If n is 32 or more and the carry flag is updated, it is updated to the value of bit[31] of
Rm.
34.2.3.4.2 LSR
Logical shift right by n bits moves the left-hand
32
-n bits of the register Rm, to the right by
n places, into the right-hand
32
-n bits of the result. And it sets the left-hand n bits of the
result to 0. See Figure 142
.
You can use the LSR #n operation to divide the value in the register Rm by 2
n
, if the value
is regarded as an unsigned integer.
When the instruction is
LSRS
or when LSR #n is used in Operand2 with the instructions
MOVS
,
MVNS
,
ANDS
,
ORRS
,
ORNS
,
EORS
,
BICS
,
TEQ
or
TST
, the carry flag is updated to the last bit
shifted out, bit[n-1], of the register Rm.
Note
• If n is 32 or more, then all the bits in the result are cleared to 0.
Fig 141. ASR #3
 
&DUU\
)ODJ



Table of Contents

Other manuals for NXP Semiconductors LPC1768

Questions and Answers:

Question and Answer IconNeed help?

Do you have a question about the NXP Semiconductors LPC1768 and is the answer not in the manual?

NXP Semiconductors LPC1768 Specifications

General IconGeneral
BrandNXP Semiconductors
ModelLPC1768
CategoryMicrocontrollers
LanguageEnglish

Related product manuals