8085 微处理器中执行 AND 操作的指令
在 8085 指令集中,尤其是在其逻辑指令组中,我们有 AND、OR、XOR、NOT 类型的指令。8085 没有直接执行 NAND、NOR、XNOR 操作的指令。现在让我们仅讨论执行 AND 操作的指令。
为了执行两个数字的 AND 操作,8085 要求其中一个操作数必须保存在累加器中。另一个操作数可以位于以下任意位置:
分类 | 示例 |
---|---|
另一个操作数可以保存在指令中的 8 位立即数中。 | ANI 43H ANI FFH |
另一个 8 位操作数可以保存在内存位置中,其内存地址由 HL 寄存器对指向。 | ANA M |
另一个 8 位操作数可以保存在 8 位寄存器中 | ANA B ANA C |
以下是 8085 指令集中可用于 AND 操作的指令列表:
助记符,操作数 | 操作码(十六进制) | 字节数 |
---|---|---|
ANA A | A7 | 1 |
ANA B | A0 | 1 |
ANA C | A1 | 1 |
ANA D | A2 | 1 |
ANA E | A3 | 1 |
ANA H | A4 | 1 |
ANA L | A5 | 1 |
ANA M | A6 | 1 |
ANI 数据 | E6 | 2 |
AND 操作对两个操作数执行按位 AND 操作。如果 X 是累加器的一个位,Y 是另一个操作数在相同位位置的一个位,则 AND 操作根据以下真值表执行。
AND 操作的真值表
X | Y | X AND Y |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
AND 指令将影响标志寄存器位,如下所示:
- S、P 和 Z 标志根据结果更新
- Cy 标志复位为 0
- AC 标志设置为 1。
广告