运算符 右移 左移的理解

  1. 左移
    左移多少指的是二进制数低位添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

  2. 右移
    右移多少指的是二进制数低位去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

  3. 关于负数的左移右移,还有无符号右移>>>
    大家去看看这为博客主写的他讲的比较详细,也很容易理解.
    https://blog.****.net/bushqiang/article/details/79394211
    运算符 右移 左移的理解运算符 右移 左移的理解
    运算符 右移 左移的理解
    运算符 右移 左移的理解