
Table 3-6. Bit-Manipulation Instructions (2)
*
Size: operand size
B: Byte
Notes on Bit Manipulation Instructions:
BSET, BCLR, BNOT, BST, and BIST are read-modify-
write instructions. They read a byte of data, modify one bit in the byte, then write the byte back.
Care is required when these instructions are applied to registers with write-only bits and to the I/O
port registers.
Example 1:
BCLR is executed to clear bit 0 in the port 4 data direction register (P4DDR) under
the following conditions.
P4
7
:
Input pin, Low, MOS pull-up transistor on
P4
6
:
Input pin, High, MOS pull-up transistor off
P4
5
– P4
0
:
Output pins, Low
The intended purpose of this BCLR instruction is to switch P4
0
from output to input.
Instruction
BIXOR
Size*
B
Function
C
⊕
[(<bit-No.> of <EAd>)]
→
C
XORs the C flag with the inverse of a specified bit in a general register
or memory.
The bit number is specified by 3-bit immediate data.
(<bit-No.> of <EAd>)
→
C
Copies a specified bit in a general register or memory to the C flag.
(<bit-No.> of <EAd>)
→
C
Copies the inverse of a specified bit in a general register or memory to
the C flag.
The bit number is specified by 3-bit immediate data.
C
→
(<bit-No.> of <EAd>)
Copies the C flag to a specified bit in a general register or memory.
C
→
(<bit-No.> of <EAd>)
Copies the inverse of the C flag to a specified bit in a general register or
memory.
The bit number is specified by 3-bit immediate data.
BLD
B
BILD
BST
B
BIST
Read
Modify
Write
Read one data byte at the specified address
Modify one bit in the data byte
Write the modified data byte back to the specified address
42