• 一分钟掌握位运算符—与(&)、非(~)、或(|)、异或(^)


    第一个版本:

     
    位运算符的计算主要用在二进制中。

    实际开发中也经常会遇到需要用到这些运算符的时候,同时这些运算符也被作为基础的面试笔试题。
    所以了解这些运算符对程序员来说是十分必要的。
    于此,记录下我所理解的运算符:

    如果以开关开灯论:
    有这样两个开关,0为开关关闭,1为开关打开。

    与(&)运算

    与运算进行的是这样的算法:
    0&0=0,0&1=0,1&0=0,1&1=1

    在与运算中两个开关是串联的,如果我们要开灯,需要两个开关都打开灯才会打开。
    理解为A与B都打开,则开灯,所以是1&1=1
    任意一个开关没打开,都不开灯,所以其他运算都是0

    通俗理解为A(与)&B都开则开,否则关

    非(~)运算

    非运算即取反运算,在二进制中1变0,0变1
    110101进行非运算后为
    001010即1010

    或(|)运算

    或运算进行的是这样的算法:
    0&0=0,0&1=1,1&0=1,1&1=1

    在或运算中两个开关是并联的,即一个开关开,则灯开。
    如果任意一个开关开了,灯都会亮。
    只有当两个开关都是关的,灯才不开。

    理解为A(或)|B任意开则开

    异或(^)运算

    异或运算通俗地讲就是一句话
    同为假,异为真
    所以它是这样的算法:
    0&0=0,0&1=1,1&0=1,1&1=0

     

    第二个版本:

    设真值为1,假值为0(true = 1, false = 0)。

    与运算符:


    与(&&):逻辑规则是两真才真。与and等同。

     true &&  true = true    ===>   1 && 1 = 1

     true && false = false    ===>   1 && 0 = 0

     false && false = false    ===>   0 && 0 = 0

     false && true = false    ===>   0 && 1 = 0

    或运算符:

    或(||):逻辑规则是只有一个为真就为真。与or等同。

     true ||  true = true    ===>   1 || 1 = 1

     true || false = true    ===>   1 || 0 = 1

     false || false = false   ===>  0 || 0 = 0

     false || true = true    ===>   0 || 1 = 1


    异或运算符:

    异或(^):逻辑规则是两个不同就为真。

     true ^  true = false    ===>   1 ^ 1 = 0

     true ^ false = true    ===>   1 ^ 0 = 1

     false ^ false = false    ===>   0 ^ 0 = 0

     false ^ true = true    ===>   0 ^ 1 = 1


    非运算符:

    非(!):逻辑规则是反转操作数的含义。与not等同。

    !true =false  ===>   !1 = 0

    !false=true   ===>   !0 =1

    执行顺序:not > and > or

  • 相关阅读:
    30条MySQL优化总结
    安装了最新的pycharm不能自动补全的解决方法。路径中输入变成¥的解决方法
    You should consider upgrading via the 'python -m pip install --upgrade pip' command解决方法
    B站MySQL学习之笔记
    B站MySQL学习之job_grades表数据
    B站MySQL学习之student数据
    Faker 造相对真实的测试数据
    浏览器地址栏输入url后的过程
    cookie、session及token的区别
    Get和Post的区别
  • 原文地址:https://www.cnblogs.com/xiongmozhou/p/10434376.html
Copyright © 2020-2023  润新知