Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
处理器中的程序计数器 (PC) 是否可能溢出,如果是,会发生什么情况?也就是说,如果它可以容纳 1 个字节,那么当它增加到超过 255 时会发生什么?
对于某些(大多数?)CPU,这是可能的;如果程序计数器溢出,它会环绕。
例如,如果 PC 是 16 位的,并且在 0xFFFF 处有一条 1 字节指令,那么 CPU 可能会愉快地继续执行 0x0000 处的下一条指令。
当然,这取决于很多不同的事情(例如,哪个 CPU、哪种操作模式、软件/操作系统如何配置等)。还有一些极端情况;就像您是否可以将一条(2 字节或更大)指令拆分为第一部分位于最高地址(在 PC 换行之前访问),其余部分位于最低地址(在 PC 换行之后访问)。