and

Logical AND

Performs a logical AND of the first and second operands and stores the result in the second operand.

Sizes .b .w .l, .w by default

XNZVC –●●00
  • ● depends on the result
  • 0 always 0
  • – not changed

Forms

Operands

<ea>
An operand using one of the addressing modes listed for this form. The list determines whether it can be a register, memory or an immediate value. With opt p=68020, an allowed d(An,Xn) or d(PC,Xn) mode also permits the corresponding 68020 indexed and memory indirect forms. See 68020 addressing. More
#imm
An immediate value written after #: a number, character or label, such as #10, #$FF or #'a'. It must fit the operation’s size: byte -128 to 255, word -32768 to 65535, or long -2147483648 to 4294967295; signed and unsigned spellings are accepted. More
move.l #%11110000, d0
move.l #%10101010, d1
and.b d1, d0 ; d0 = %10100000

* --- Use for masking (keeping specific bits) ---
move.l #$ABCD, d2
and.w #$00FF, d2 ; keep low byte only: d2 = $00CD