8085 中的程序计数器实际上是如何工作的?

How does program counter in 8085 actually work?

我一直在阅读8085的程序计数器。这里material说明程序计数器的功能是指向要从中获取下一个字节的内存地址。当一个字节(机器代码)被获取时,程序计数器加一以指向下一个内存位置。 我的问题是如果指令大小不同,它如何处理这种情况。假设当前指令是 3 个字节,那么 PC 应该指向当前地址+3。 PC 如何知道当前指令的大小? 我是 8085 的新手,如有任何帮助,我们将不胜感激。 谢谢

您引用的 material 并没有具体说明这个问题 - 它只是说当提取一个字节时 PC 会递增,这是正确的(它没有说有一条指令不能是多个字节)。

一般来说,CPU会使程序计数器递增以指向下一条指令。

更准确地说,在指令解码阶段,CPU 将读取指令所需的字节数并相应地增加 PC。