PIC18FXX20
TSTFSZ
Test f, skip if 0
XORLW
Exclusive OR literal with W
Syntax:
Operands:
[ label ] TSTFSZ f [,a]
0 ≤ f ≤ 255
a ∈ [0,1]
skip if f = 0
None
Syntax:
[ label ] XORLW k
0 ≤ k ≤ 255
(W) .XOR. k → W
N, Z
Operands:
Operation:
Status Affected:
Encoding:
Operation:
Status Affected:
Encoding:
0000
1010
kkkk
kkkk
0110
011a
ffff
ffff
Description:
The contents of W are XORed
with the 8-bit literal 'k'. The result
is placed in W.
1
1
Description:
If 'f' = 0, the next instruction,
fetched during the current instruc-
tion execution, is discarded and a
NOPis executed, making this a
two-cycle instruction. If ‘a’ is 0, the
Access Bank will be selected, over-
riding the BSR value. If ‘a’ is 1,
then the bank will be selected as
per the BSR value (default).
Words:
Cycles:
Q Cycle Activity:
Q1
Q2
Q3
Q4
Write to W
Decode
Read
Process
literal 'k'
Data
Words:
Cycles:
1
1(2)
Example:
XORLW 0xAF
= 0xB5
Note: 3 cycles if skip and followed
by a 2-word instruction.
Before Instruction
W
Q Cycle Activity:
Q1
After Instruction
Q2
Q3
Process
Data
Q4
No
operation
W
=
0x1A
Decode
Read
register 'f'
If skip:
Q1
Q2
Q3
Q4
No
No
No
No
operation
operation
operation
operation
If skip and followed by 2-word instruction:
Q1
Q2
No
Q3
No
Q4
No
operation
No
operation
operation
operation
No
operation
No
operation
No
operation
No
operation
HERE
NZERO
ZERO
TSTFSZ CNT, 1
:
:
Example:
Before Instruction
PC
=
Address (HERE)
After Instruction
If CNT
PC
=
=
≠
=
0x00,
Address (ZERO)
0x00,
If CNT
PC
Address (NZERO)
2003 Microchip Technology Inc.
Advance Information
DS39609A-page 299