二进制和位运算

原码 反码(取反) 补码(+1)
负数用补码表示
8 -00001000(原码)-01110111(反码)-01111110(补码)
原码转补码 取反+1
补码转原码 取反+1
——————————————————————————–
位运算:
&(与):遇0则0
|(或):遇1则1
^(异或):加法不进位

1 010 ^ 111
2 第一位:0+1=1
3 第二位:1+1=0
4 第三位:0+1=1
5 所以最后结果:101

 

~(取反):0变1,1变0
>>(带符号右移):左边补符号位
<<(左移):不带符号左移
>>>(不带符号右移):左边补0

1 a和b交换 2 a=a^b 3 b=a^b 4 a=a^b

a/2 等同于 a>>1
a*2 等同于 a<<1

 

 

    原文作者:徐康佳
    原文地址: https://www.cnblogs.com/xukangjia/p/11322161.html
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞