Cel*_*tas 1 cpu assembly boolean-logic xor
是xor最快的操作ALU可以在一个字节呢?我的教授说这是因为没有什么比检查两件事情是否相同更简单.如果操作数不同并且它们是相同的xor,这是否是正确的思考方式?10
这一切都取决于CPU的工作方式.实际上,现代芯片上的ALU操作都是一个时钟周期 - 但即便是这种说法也过于笼统,因为通常有多种方法可以进行算术运算.
SIMD功能允许您在每个时钟周期处理多个数据,从而提高吞吐量.某些体系结构(如x86 LEA)上的某些指令允许您将多个算术运算组合成单个指令,该指令再次在单个时钟周期内执行,从某些角度来看更快.
在大多数体系结构中,ALU不仅返回一个值,它们还修改标志:overflow(进位),零等.执行算术运算所需的时间可能会改变,如果其他指令依赖于这些标志,特别是如果有条件参与其中.检查手册.
此外,就延迟而言,"快速"在每秒操作方面不同于"快速".XOR可能需要一个时钟周期才能在ALU中执行,但需要另一个时钟周期,直到结果可用于另一条指令,标志或其他方式.即使如此,乱序执行可以使它看起来像结果立即可用,但这是因为芯片是围绕你的指示改组,以保持自己忙碌.
实际上NAND和NOR是最简单的二进制操作,因为它们的CMOS实现(粗略地说它们具有较少的门数).NOT当然是最简单的操作,因为它所做的只是反转位.然而,就实际CPU而言,即使加/减操作也可能只需要一个周期.
| 归档时间: |
|
| 查看次数: |
2942 次 |
| 最近记录: |