CPU中的ALU运算是什么?

What are the ALU operations in CPU?

除了 alu 的常见操作,如 (add,subtract,multiple,and,or,xor,not) 它还有哪些其他操作,或者我在哪里可以获得包含所有操作的列表 cpu ??

为了什么 cpu 你需要这个。每个 cpu 都有不同的操作 commands.Mips 例如有这些:MIPS Instruction References 。你知道这些的唯一方法是制造商制造它们 public 我认为

您通常可以从程序员手册中的指令集中推断出这一点。

根据其编写方式,可能需要稍微注意区分主要(传统)ALU 的操作与浮点引擎等附属单元的操作。或者,在手册的不同部分或明确标记的不同 classes 操作可能很清楚。通常也会使用不同的寄存器或指令格式。

一个明显的 class 传统 ALU 操作在您的列表中缺失但存在于大多数设备上是移位和旋转。这些比硬件乘法更受支持。

另一种是"move"、"load"或"store"类型的操作。通常(至少在历史设计中)这些通过 ALU 时带有一些设置,使输出仅与输入之一匹配。在某些情况下,这些将在指令字中显式编码为一些空操作,例如加零、将输入与自身进行“或”运算,或与全“1”常量寄存器进行“与”运算。在其他情况下,传递由指令解码逻辑在内部配置。更令人困惑的是,你可以有一个供人类使用的指令助记符,它看起来很不同,但实际上被编码为一个指令词,它只是更通用的东西的特例。进一步推进该主题,堆栈操作可能遵循类似的路径,并且对于 load/store.

的特殊情况可能是不同的或友好的助记符