【笔记】二进制数按位运算

前言

二进制数按位运算

按位与运算(AND)

  • 有0则0,全1为1
1
2
3
4
1001 1001
1010 1010
---------
1000 1000

按位或运算(OR)

  • 有1则1,全0则0
1
2
3
4
1001 1001
1010 1010
---------
1011 1011

按位异或运算(XOR)

  • 相同为0,不同为1
1
2
3
4
1001 1001
1010 1010
---------
0011 0011

按位同或运算(XNOR)

  • 相同为1,不同为0
1
2
3
4
1001 1001
1010 1010
---------
1100 1100

按位取反运算

1
2
3
1001 1001
---------
0110 0110

按位左移运算(SHL)

  • 左移1位,最低位补0
1
2
3
1001 1001
---------
0011 0010

按位逻辑右移运算(SHR)

  • 按位无符号右移运算
  • 右移1位,最高位补0
1
2
3
1001 1001
---------
0100 1100

按位算数右移运算(USHR)

  • 按位有符号右移运算
  • 右移1位,最高位符号位保持不变
1
2
3
1001 1001
---------
1100 1100
1
2
3
0001 1001
---------
0100 1100

完成