
2002 Microchip Technology Inc.
Preliminary
DS30485A-page 251
PIC18FXX39
TSTFSZ
Test f, skip if 0
Syntax:
[ label ] TSTFSZ f [,a]
Operands:
0
≤ f ≤ 255
a
∈ [0,1]
Operation:
skip if f = 0
Status Affected:
None
Encoding:
0110
011a
ffff
Description:
If 'f' = 0, the next instruction,
fetched during the current instruc-
tion execution, is discarded and a
NOP
is 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:
1
Cycles:
1(2)
Note: 3 cycles if skip and followed
by a 2-word instruction.
Q Cycle Activity:
Q1
Q2
Q3
Q4
Decode
Read
register 'f'
Process
Data
No
operation
If skip:
Q1
Q2
Q3
Q4
No
operation
No
operation
No
operation
No
operation
If skip and followed by 2-word instruction:
Q1
Q2
Q3
Q4
No
operation
No
operation
No
operation
No
operation
No
operation
No
operation
No
operation
No
operation
Example:
HERE
TSTFSZ
CNT, 1
NZERO
:
ZERO
:
Before Instruction
PC = Address (HERE)
After Instruction
If CNT
=
0x00,
PC
=
Address (ZERO)
If CNT
≠
0x00,
PC
=
Address (NZERO)
XORLW
Exclusive OR literal with W
Syntax:
[ label ] XORLW k
Operands:
0
≤ k ≤ 255
Operation:
(W) .XOR. k
→ W
Status Affected:
N, Z
Encoding:
0000
1010
kkkk
Description:
The contents of W are XORed
with the 8-bit literal 'k'. The result
is placed in W.
Words:
1
Cycles:
1
Q Cycle Activity:
Q1
Q2
Q3
Q4
Decode
Read
literal 'k'
Process
Data
Write to W
Example:
XORLW 0xAF
Before Instruction
W=
0xB5
After Instruction
W
=
0x1A