1

微处理器指令有两种基本类型:整数和浮点。

因此,它们在整数处理单元和浮点处理单元上执行。这是有道理的,对吧?

但是是什么告诉处理器向 IPU 或 FPU 发送指令?它怎么知道哪条指令是哪一种?

也许一条指令有一个位/标志/LUT或一些可以区分彼此的东西?

4

1 回答 1

3

每个 CPU 指令都有一个操作码。CPU 查看操作码来确定指令应该被发送到哪个执行单元。对于 x86 上的浮点指令,操作码通常以1101 1....第一个十六进制数字开头D,然后设置下一个数字的 MS 位。例如FADD(浮点加法)以D8or开头DC,具体取决于后面的参数。相比之下,整数指令的操作码ADD通常以x000 0...( xcan be 0or 1) 开头,即第一个数字是0or8而第二个数字的 MS 位清零。根据参数,它可以是01, 02, 03, 04,05, 80,8183.

于 2011-11-24T16:42:41.683 回答