您好,我正在为 8086 编写汇编代码,但我想知道 CPU 如何区分例如
和 AX,[内存地址]和和 AX,内存地址
我们在它周围放置 [] 以指示它应该替换为地址内容,但 CPU 看到这样的指令
00 01 1101001
它如何知道它是否应该添加值1101001或地址1101001的内容。
我想到有多个 ADD 命令,它们的操作码不同,例如(ADDTHECONTENT 和 ADDTHEVALUE),但 a86 允许我们只说 ADD,因为我们可以轻松地将语义与 [] 语法区分开来。这似乎是合乎逻辑的,但我不确定,所以我想问一下,是否有许多操作码对应于不同寻址模式的指令。
区别在于操作码。 有多个ADD
操作码(数值为 0、1、2、3、4、5),它们在预期参数长度以及如何处理参数方面完全不同。