Semiconductor Group
4-15
1998-04-01
Instruction Set
C500 Family
ANL
<dest-byte>, <src-byte>
Function:
Logical AND for byte variables
Description:
ANL performs the bitwise logical AND operation between the variables indicated
and stores the results in the destination variable. No flags are affected (except P, if
<dest-byte> = A).
The two operands allow six addressing mode combinations. When the destination
is a accumulator, the source can use register, direct, register-indirect, or immediate
addressing; when the destination is a direct address, the source can be the
accumulator or immediate data.
Note:
When this instruction is used to modify an output port, the value used as the original
port data will be read from the output data latch, not the input pins.
Example:
If the accumulator holds 0C3H (11000011B) and register 0 holds 0AAH
(10101010B) then the instruction
ANL
A,R0
will leave 81H (10000001B) in the accumulator.
When the destination is a directly addressed byte, this instruction will clear
combinations of bits in any RAM location or hardware register. The mask byte
determining the pattern of bits to be cleared would either be a constant contained
in the instruction or a value computed in the accumulator at run-time.
The instruction
ANL
P1, #01110011B
will clear bits 7, 3, and 2 of output port 1.
ANL
A,Rn
Operation:
ANL
(A)
¬
(A)
Ù
(Rn)
Bytes:
1
Cycles:
1
ANL
A,direct
Operation:
ANL
(A)
¬
(A)
Ù
(direct)
Bytes:
2
Cycles:
1
Encoding:
0 1 0 1
1 r r r
Encoding:
0 1 0 1
0 1 0 1
direct address