机器指令和微操作有什么区别?我在这里找到了以下定义:
一条小的基本指令,串联使用以构成高级机器指令
这是我在维基百科上找到的
在计算机中央处理单元中,微操作(也称为微操作或微操作)是在某些设计中用于实现复杂机器指令(在此上下文中有时称为宏指令)的详细低级指令
我是否正确理解微操作是在给定周期内执行的处理器指令。说喜欢和 ADD、SUB、MUL、ST、LD。我错过了什么吗?
任何帮助表示赞赏。
几年前,人们发现 RISC 比 CISC 更好。如果您想要一个非常高速的处理器,那么您希望您的所有指令都非常简单。这使它们能够在短时间内完成,从而提高时钟速度。因此,Andrew Tanenbaum 预测“5 年后没有人会运行 x86”。那是在90年代。
所以发生了什么事?x86(因此 AMD64,也称为 x86_64)不是最著名的 CISC 指令集吗?好吧,不要低估英特尔(和 AMD)工程师的聪明才智。意识到如果他们想要一个更高速度的处理器(在 90 年代后期我们达到了 > 4GHz 的一个核心),他们无法在一个时钟周期内处理他们的复杂指令。解决方案是使用“微操作”。
每个微操作都将在单个时钟周期内执行,并且类似于 RISC 类型的指令。当处理器遇到 CISC 指令时,它会将其解码为几个微操作,每个微操作将持续一个周期。因此,它们可以保留旧的粗糙指令集架构(为了向后兼容)并具有非常高的时钟速度。