我有一个问题,所有的硬核低级黑客在那里。 我在博客中碰到了这个句子。 我真的不认为这个来源很重要(如果你真的关心,那就是哈克),因为这似乎是一个普遍的说法。 例如,许多现代3D游戏都有用C ++和Assembly编写的高性能核心引擎。 就assembly而言 – 是用汇编编写的代码,因为你不希望编译器发出额外的指令或使用过多的字节,或者你使用了更好的algorithm,而这些algorithm在C中不能expression(或者不能用编译器把他们扼杀起来)? 我完全明白,理解低层次的东西是很重要的。 我只是想了解为什么在程序集合了解之后。
我不想优化任何东西,我发誓,我只是想出于好奇而问这个问题。 我知道在大多数硬件上都有一个位移的汇编命令(例如shl , shr ),这是一个单一的命令。 但是,这有什么重要的(纳秒级或CPU-tact-wise)你转移了多less位。 换句话说,在任何一个CPU上,以下哪一项更快? x << 1; 和 x << 10; 请不要讨厌我这个问题。 🙂