Performance 将一个数字乘以2的最快方法是什么?

Performance 将一个数字乘以2的最快方法是什么?,performance,numbers,multiplication,Performance,Numbers,Multiplication,我知道数字乘以2有多种方法: v << 1 v * 2 v >> -1 v + v v - -v v>-1 v+v v--v 哪个最快? 我在英特尔x86处理器上使用汇编。这里显然没有一个答案。答案至少取决于使用的特定处理器 大多数情况下,编译器都会知道,因此大多数情况下,您只需在代码中编写*2,即可最大限度地提高读者的清晰度和效率 如果你真的在乎,你必须自己仔细测量 (另外,乘以2是非常基本的,以至于v*2,v+v,和v在哪个处理器上速度最快?什么编程语言?哪个编译

我知道数字乘以2有多种方法:

v << 1
v * 2
v >> -1
v + v
v - -v
v>-1
v+v
v--v
哪个最快?
我在英特尔x86处理器上使用汇编。

这里显然没有一个答案。答案至少取决于使用的特定处理器

大多数情况下,编译器都会知道,因此大多数情况下,您只需在代码中编写
*2
,即可最大限度地提高读者的清晰度和效率

如果你真的在乎,你必须自己仔细测量


(另外,乘以2是非常基本的,以至于
v*2
v+v
,和
v在哪个处理器上速度最快?什么编程语言?哪个编译器版本?有太多的影响因素。许多编译器会将下面的所有命令优化为一个逗号。)nd…有什么问题吗?
*?我在windows上的汇编中使用的是Intel 4处理器2.0 ghz。根据具体实现,编译器应该为您找到答案…某些硬件不能在一次单击周期内成倍增加,等等…这不是汇编。。。