
PIC16CE62X
DS40182C-page 68
 1999 Microchip Technology Inc.
BCF
Bit Clear f
Syntax:
[
label ] BCF
f,b
Operands:
0
≤ f ≤ 127
0
≤ b ≤ 7
Operation:
0
→ (f<b>)
Status Affected:
None
Encoding:
01
00bb
bfff
ffff
Description:
Bit ’b’ in register ’f’ is cleared
.
Words:
1
Cycles:
1
Example
BCF
FLAG_REG, 7
Before Instruction
FLAG_REG = 0xC7
After Instruction
FLAG_REG = 0x47
BSF
Bit Set f
Syntax:
[
label ] BSF
f,b
Operands:
0
≤ f ≤ 127
0
≤ b ≤ 7
Operation:
1
→ (f<b>)
Status Affected:
None
Encoding:
01
01bb
bfff
ffff
Description:
Bit ’b’ in register ’f’ is set.
Words:
1
Cycles:
1
Example
BSF
FLAG_REG,
7
Before Instruction
FLAG_REG = 0x0A
After Instruction
FLAG_REG = 0x8A
BTFSC
Bit Test, Skip if Clear
Syntax:
[
label ] BTFSC f,b
Operands:
0
≤ f ≤ 127
0
≤ b ≤ 7
Operation:
skip if (f<b>) = 0
Status Affected:
None
Encoding:
01
10bb
bfff
ffff
Description:
If bit ’b’ in register ’f’ is ’0’, then the next
instruction is skipped.
If bit ’b’ is ’0’, then the next instruction
fetched during the current instruction
execution is discarded, and a NOP is
executed instead, making this a
two-cycle instruction
.
Words:
1
Cycles:
1(2)
Example
HERE
FALSE
TRUE
BTFSC
GOTO
FLAG,1
PROCESS_CODE
Before Instruction
PC =
address
HERE
After Instruction
if FLAG<1> = 0,
PC =
address TRUE
if FLAG<1>=1,
PC =
address FALSE