# Vault 7: Projects

This publication series is about specific projects related to the Vault 7 main publication.

### Protego

# PIC24FJ64GA004 - Programmers Reference Manual

- 1
- 2
…
- 111
- 112
- 113
- 114
- 115
…
- 501
- 502

© 2005-2011 Microchip Technology Inc. DS70157F-page 113
Section 5. Instruction Descriptions
Instruction
Descriptions
5
AND
AND Literal and Wn
Implemented in: PIC24F PIC24H PIC24E dsPIC30F dsPIC33F dsPIC33E
X X X X X X
Syntax: {label:} AND{.B} #lit10, Wn
Operands: lit10 ∈ [0 ... 255] for byte operation
lit10 ∈ [0 ... 1023] for word operation
Wn ∈ [W0 ... W15]
Operation: lit10.AND.(Wn) → Wn
Status Affected: N, Z
Encoding: 1011 0010 0Bkk kkkk kkkk dddd
Description: Compute the logical AND operation of the 10-bit literal operand and the
contents of the working register Wn and place the result back into the
working register Wn. Register direct addressing must be used for Wn.
The ‘B’ bit selects byte or word operation (‘0’ for word, ‘1’ for byte).
The ‘k’ bits specify the literal operand.
The ‘d’ bits select the address of the working register.
Note 1: The extension .B in the instruction denotes a byte operation
rather than a word operation. You may use a .W extension to
denote a word operation, but it is not required.
2: For byte operations, the literal must be specified as an
unsigned value [0:255]. See Section 4.6 “Using 10-bit Literal
Operands” for information on using 10-bit literal operands in
Byte mode.
Words: 1
Cycles: 1
Example 1:
AND.B #0x83, W7 ; AND 0x83 to W7 (Byte mode)
Before
Instruction
After
Instruction
W7 12C0 W7 1280
SR 0000 SR 0008 (N = 1)
Example 2:
AND #0x333, W1 ; AND 0x333 to W1 (Word mode)
Before
Instruction
After
Instruction
W1 12D0 W1 0210
SR 0000 SR 0000

- 1
- 2
…
- 111
- 112
- 113
- 114
- 115
…
- 501
- 502