CPU中的ALU操作是什么?

时间:2015-04-03 11:07:30

标签: cpu operation alu

除了alu的常见操作(加,减,多,和,或者,xor,不是)它还有什么其他操作,或者我在哪里可以得到一个包含cpu的所有操作的列表?

2 个答案:

答案 0 :(得分:0)

你需要什么cpu。每个cpu都有不同的操作命令。例如,迈克有:MIPS Instruction References。你知道这些的唯一方法是,如果制造商公开我认为

答案 1 :(得分:0)

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

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

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

另一个是"移动","加载"或"存储"类型操作。通常(至少在历史设计中)这些通过ALU通过一些设置使输出仅与输入之一匹配。在某些情况下,这些将在指令字中明确地编码为一些空操作,例如添加零,或者将输入与自身进行“或”,或者使用全1常数寄存器进行AND操作。在其他情况下,直通由指令解码逻辑在内部配置。进一步混淆的事情,你可以有一个人类使用的指令助记符,看起来不同,但实际上编码为一个指令词,这只是一个更通用的特殊情况。进一步说明这个主题,堆栈操作可能遵循类似的路径,对于特殊的加载/存储情况,可能是不同的或友好的助记符。