【发布时间】:2018-01-30 17:05:21
【问题描述】:
我读到 x86 CPU 具有 1 到 15 个字节的可变指令长度。另一方面,x86 的字长也是 32 位,这意味着所有寄存器,包括保存实际指令的指令寄存器,都是 32 位宽(4 字节)。
这意味着指令可以比指令寄存器更宽。这怎么搭配?此外,我了解到,在执行一条指令后,不跳转,指令计数器增加 4。这意味着它在假设每条指令长 4 个字节的情况下运行。这是怎么回事?
我希望有人可以为我澄清这一点。
【问题讨论】:
-
我认为您正在将 MIPS(或其他一些不错的 RISC)概念与 x86 混合,可能有一些相关的答案
-
如果你能链接我这样的答案会很好^^。我试图在谷歌上搜索,但不知道要搜索哪个词。
-
x86 中没有保存指令的“指令寄存器”。
-
"x86 字长为 32 位" x86 字长为 16 位由于历史原因。请参阅英特尔手册中的 4.1 基本数据类型部分。
标签: x86 cpu-architecture