Datasheet

PIC16C505
DS40192D-page 50 1999-2012 Microchip Technology Inc.
SWAPF Swap Nibbles in f
Syntax: [
label
] SWAPF f,d
Operands: 0 f 31
d [0,1]
Operation: (f<3:0>) (dest<7:4>);
(f<7:4>) (dest<3:0>)
Status Affected: None
Encoding:
0011 10df ffff
Description: The upper and lower nibbles of
register 'f' are exchanged. If 'd' is
0, the result is placed in W regis-
ter. If 'd' is 1, the result is placed in
register 'f'.
Words: 1
Cycles: 1
Example
SWAPF
REG1, 0
Before Instruction
REG1 = 0xA5
After Instruction
REG1 = 0xA5
W = 0X5A
TRIS Load TRIS Register
Syntax: [
label
] TRIS f
Operands: f = 6
Operation: (W) TRIS register f
Status Affected: None
Encoding:
0000 0000 0fff
Description: TRIS register 'f' (f = 6 or 7) is
loaded with the contents of the W
register
Words: 1
Cycles: 1
Example
TRIS PORTB
Before Instruction
W=0XA5
After Instruction
TRIS = 0XA5
XORLW Exclusive OR literal with W
Syntax:
[
label
] XORLW k
Operands: 0 k 255
Operation: (W) .XOR. k W)
Status Affected: Z
Encoding:
1111 kkkk kkkk
Description: The contents of the W register are
XOR’ed with the eight bit literal 'k'.
The result is placed in the W regis-
ter.
Words: 1
Cycles: 1
Example: XORLW 0xAF
Before Instruction
W= 0xB5
After Instruction
W = 0x1A
XORWF Exclusive OR W with f
Syntax: [
label
] XORWF f,d
Operands: 0 f 31
d [0,1]
Operation: (W) .XOR. (f) dest)
Status Affected: Z
Encoding:
0001 10df ffff
Description: Exclusive OR the contents of the
W register with register 'f'. If 'd' is 0,
the result is stored in the W regis-
ter. If 'd' is 1, the result is stored
back in register 'f'.
Words: 1
Cycles: 1
Example XORWF
REG,1
Before Instruction
REG = 0xAF
W=0xB5
After Instruction
REG = 0x1A
W=0xB5