ANDS
Bitwise AND and set flags
AND two scalar inputs and set N/Z from the result, clearing C/V.
| Form | Bits | Requires | Encoding |
|---|---|---|---|
ANDS Wd, Wn, Wm{, shift #amount} | 32 | Armv8-A | 01101010xx0xxxxxxxxxxxxxxxxxxxxx |
ANDS Xd, Xn, Xm{, shift #amount} | 64 | Armv8-A | 11101010xx0xxxxxxxxxxxxxxxxxxxxx |
Operation#
Pseudo-C · selected form
result = Rn AND shift_within_width(Rm, shift, amount)
Rd = result
N = result[width-1]; Z = (result == 0)
C = 0; V = 0What to watch for
- Omitted shift means LSL #0. Unlike some A32 operations, shifted-out bits do not set C.
Architectural details#
- Flags
- Sets N and Z from the result. C and V are cleared.
- Destination
- Writing Wd clears the corresponding X register’s upper 32 bits. Writes to ZR are discarded; SP is not accepted.
- Encoding
01101010xx0xxxxxxxxxxxxxxxxxxxxx- Operands
Wdwrite · 32 bitsWnread · 32 bitsWmread · 32 bitsshiftreadamountread
- Coverage
- 32/64-bit shifted-register logic; logical-immediate bitmasks are outside this selection.
- shift
- LSL, LSR, ASR, ROR.
- amount
- 0 to 31.
Exception information & execution requirements
Complete exception conditions have not been imported.
MRS supplies encoding and availability conditions, not an exhaustive exception model.
Feature availability alone does not guarantee execution: OS state and execution-level controls also apply. Use the linked architecture documentation for the full exception conditions.
Sources & provenance#
Technical fields are imported from pinned upstream files. Explanations and explorer behavior are maintained separately.
Architectural references for this form
Arm · aarchmrs
- Revision
2026-03_rel- SHA-256
bf355d263eed08ef6b3e4e680e6bba3642fa7c3dd0be77ffb4783420041a0860- Terms
- BSD-3-Clause