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