在8085指令集中,特别是在其逻辑指令集中,我们具有AND,OR,XOR,NOT类型的指令。8085没有直接执行NAND,NOR,XNOR操作的指令。现在让我们讨论仅执行XOR操作的指令。
要执行两个数字的异或运算,8085施加了以下限制:必须将一个操作数保留在累加器中。另一个操作数可以位于以下任何可能的位置-
| 分类 | 例子 |
|---|---|
| 另一个操作数可以保存在指令的8位立即数中。 | XRI 43H XRI FFH |
| 另一个8位操作数可以保留在一个存储单元中,并且其存储地址将由HL寄存器对指向。 | XRA M |
| 另一个8位操作数可以保存在8位寄存器中 | XRA B ORA C |
这是适用于XORing操作的8085指令集中可用的指令列表
| 助记符,运算符 | 操作码(十六进制) | 字节数 |
|---|---|---|
| XRA A | 自动对焦 | 1 |
| XRA B | A8 | 1 |
| XRA C | A9 | 1 |
| XRA D | 机管局 | 1 |
| XRA E | AB | 1 |
| XRA H | 交流电 | 1 |
| XRA L | 广告 | 1 |
| XRA M | 自动曝光 | 1 |
| XRI数据 | 电子工程 | 2 |
XOR操作对两个操作数执行按位XOR。如果X是累加器的一位,而Y是同一位位置中另一个操作数的一位,则按以下真值表执行XOR操作。
| X | ÿ | X或Y | |
|---|---|---|---|
| 0 | 0 | 0 | |
| 0 | 1 | 1 | |
| 1 | 0 | 1 | |
| 1 | 1 | 0 | |
XOR指令将影响标志寄存器位,如下所示:
S,P和Z标志根据结果进行更新;
Cy和Ac标志重置为0;