省流:

相同为0,不同为1

与1异或,进行取反

与0异或,还是它本身


按位

“按位”指的是对二进制数的每一位(bit)分别进行操作,而不是将整个数作为一个整体处理。

  1. 运算符^
  2. 按位异或运算规则:对两个操作数的每一位进行比较,相同为0不同为1
    • 1 ^ 1 = 0
    • 1 ^ 0 = 1
    • 0 ^ 0 = 0
    • 0 ^ 1 = 1
  3. 发现:
    • 一个值 与 0 异或,还是它本身
    • 一个值 与 1 异或,则取反

在C语言中,除了按位异或,C语言中常见的按位操作还有按位与(&)、按位或(|)、按位取反(~)等,它们均遵循“逐位处理”的核心逻辑。