3.5.2. AND, ORR, EOR, and BIC

Logical AND, OR, Exclusive OR, and Bit Clear.

Note

Cortex-M0 supports the AND, ORR, EOR, and BIC instructions only as instructions that update the flags, that is, as ANDS, ORRS, EORS, and BICS.

Syntax

ANDS {Rd,} Rn, Rm
ORRS {Rd,} Rn, Rm
EORS {Rd,} Rn, Rm
BICS {Rd,} Rn, Rm

where:

Rd

is the destination register.

Rn

is the register holding the first operand and is the same as the destination register.

Rm

second register.

Operation

The AND, EOR, and ORR instructions perform bitwise AND, exclusive OR, and inclusive OR operations on the values in Rn and Rm.

The BIC instruction performs an AND operation on the bits in Rn with the logical negation of the corresponding bits in the value of Rm.

The condition code flags are updated on the result of the operation, see The condition flags.

Restrictions

In these instructions, Rd, Rn, and Rm must only specify R0-R7.

Condition flags

These instructions:

  • update the N and Z flags according to the result

  • do not affect the C or V flag.

Examples

    ANDS    R2, R2, R1
    ORRS    R2, R2, R5
    ANDS    R5, R5, R8
    EORS    R7, R7, R6
    BICS    R0, R0, R1
Copyright © 2009 ARM Limited. All rights reserved.ARM DUI 0497A
Non-Confidential