运算符 右移 左移的理解
-
左移
左移多少指的是二进制数低位添0的位数,如果是带有小数的二进制数,则直接将小数点往左边移动要求移动的位数。
eg:十进制 6 的二进制为110
6<<1=110<<1=1100=12
十进制 5 的二进制为101
5<<1=101<<1=1010=10
十进制5.5的二进制为101.1
5.5<<1=101.1<<1=1011=11 -
右移
右移多少指的是二进制数低位去0的位数,如果最后一位是1不是0,则加小数点,将小数点向右移动多少位。
eg:十进制6的二进制为110
6>>1=110>>1=11=3
十进制5的二进制为101
5>>1=101>>1=10.1=2.5
十进制5.5的二进制为101.1
5.5>>1=101.1>>1=10.11=2.75 -
关于负数的左移右移,还有无符号右移>>>
大家去看看这为博客主写的他讲的比较详细,也很容易理解.
https://blog.****.net/bushqiang/article/details/79394211