二进制位运算(与、或、异或、取反)

1.与运算(AND):0 AND 0 = 0  (全1才1)
                    1 AND 0 = 0
                    0 AND 1 = 0
                    1 AND 1 = 1
   用途:用来位置0,若想把FFH(11111111B,255D)第三、五(从右往左)位置0,只需 AND 11101011B(235D,E8H).
   2.或运算(OR): 0 OR 0 = 0  (全0才0)
                    1 OR 0 = 1
                    0 OR 1 = 1
                    1 OR 1 = 1
   用途:用来位置1,若想把9EH(10011110B,158D)第二、三、四(从右往左)位置1,只需 
OR 00001110B(14D,EH).
   3.取反运算(NOT): NOT 1 = 0
                      NOT 0 = 1
   用途:用来整体取反,不能位取反。 
   4. 异或运算(XOR): 0 XOR 0 = 0  (不同为1,相同为0)
                        1 XOR 0 = 1
                        0 XOR 1 = 1
                        1 XOR 1 = 0
   用途:用来位取反,若想把9EH(10011110B,158D)第二、三、四(从右往左)位取反,只需 
XOR 00001110B(14D,EH).
   附:异或的特殊性:
   若 A XOR B = C,则 A XOR C = B,B XOR C = A.
      扩展成 A XOR B XOR C = D,结论同样成立

你可能感兴趣的:(数据结构)