java 位移运算.
2<<2不是等于8吗, 可我不明白二进制这是怎么算的 2的二进制是10 8的进制是0010 怎么移的?
按 8 位 2 进制为例(更多位同样道理): 2: 00000010 移动之后: 00001000 这样就是 8 了
明白 2 进制和 10 进制的转换看得明白。
2 << 2 等同于 2* 4 所以等于 8
计算机最终能理解的还是二进制。 所以在进行移位你就可以把它看做已经转好成二进制了。例如: 9的八进制:011<<1 9的二进制:1001 << 1 最终值:1 0010= 18.
最简单方法就是 把左移X位看成乘以2的X次方 把右移X位看成除以2的X次方
浙公网安备 33010602011771号