移位运营商如何实施?

blu*_*kin 1 bit-shift

我想知道我什么时候做4 << 2,究竟发生了什么?是否进行了任何乘法或如何计算值.如果您参考移位运营商的实施,请回复我.提前致谢

Ode*_*ded 5

通常这是处理器指令(直接在处理器上完成).

它只是移位内存中的位:

int a = 3; // a = 0 0 1 1
a << 1;    // a = 0 1 1 0 = 6
a << 1;    // a = 1 1 0 0 = 12
Run Code Online (Sandbox Code Playgroud)

如果您正在寻找有关处理器如何在非常低的水平上工作的见解,那么Charles Petzold的代码是一本非常棒的书.