二进制中的与、或、非、异或运算

  • 与运算
    【与】运算符号为 & ,运算法则为遇0得0。也就是说只要有0,结果即为0。
举例:1001 & 1100

    1 0 0 1
      &
    1 1 0 0
    ————
    1 0 0 0
  • 或运算
    【或】运算符号为 | ,就是一个竖线,运算法则为遇1得1。也就是说,只要有1,结果就为1。
举例:1100 | 1010

    1 1 0 0
       |
    1 0 1 0
    ————
    1 1 1 0
  • 非运算
    【非】预算符号为 ~,就是一个波浪线,运算法则为按位取反,也就是遇1取0,遇0取1,即 ~1 = 0 , ~0 = 1;
举例:1001 & 1001

    1 0 1 1
        ~
    ————
    0 1 0 0
  • 异或运算
    【异或】运算符号为 ^,就是一个乘方符号,运算法则为相同取0,不同取1。异或运算,关键在异上面,异为1,否则为0。
举例:1001 & 1001

    1 0 1 1
      ^
    1 0 0 1
    ————
    0 0 1 0

你可能感兴趣的:(日常算法积累,java)