逻辑右移和算术右移的区别

逻辑右移和算术右移有什么区别:

“>>>” 逻辑右移
“>>” 算术右移

  1. 逻辑右移就是不考虑符号位,右移一位,左边补零即可
  2. 算术右移需要考虑符号位,右移一位,若符号位为1,就在左边补1;否则,就补0
    所以算术右移也可以进行有符号位的除法,右移n位就等于除2的n次方

例如,8位二进制数11001101分别右移一位

  1. 逻辑右移就是[0]1100110
  2. 算术右移就是[1]1100110

你可能感兴趣的:(C/C++,学习,c++)