逻辑与或非异或逻辑运算及ABB指令讲解

1、 AND 逻辑与运算
AND为用于评估两个条件表达式(真/假)的函数返回值为True、False 或者 1、0
条件判断时,要同时满足才为真
举例
1 and 1 返回结果为1,也就是为真
1 and 0 返回结果为0, 也就是假
0 and 0 返回结果为0, 也是假
2、 OR逻辑或运算
OR 则用于评估一个逻辑值(真/假)的条件表达式
如果条件表达式之一或全部正确,则返回值为TRUE,否则,返回值为FALSE
举例
1 or 1返回结果为1,也就是为真
1 or 0返回结果为1,也是为真
0 or 0返回结果为0,也就是为假
3、 NOT 逻辑非运算
NOT 用于转化一个逻辑值(真/假)的条件表达式
c := a AND (NOT b)
如果a为TRUE,且b为FALSE,则返回值c为TRUE
最简单的理解就是把结果取反
举例
not 1返回结果为0
not 0返回结果为1
4、XOR逻辑异或 运算
XOR为用于评估一个逻辑值(真/假)的条件表达式
如果仅a或b之一为TRUE,则返回值c为TRUE。否则,返回值为FALSE
举例
1 XOR 0 返回结果为1
1 XOR 1 返回结果为0
0 XOR 0 返回结果为0
5、逻辑运算符的优先级
not > and > or
默认情况下,运算符的优先级决定了复杂表达式中的那个单一表达式先执行,但用户可以使用圆括号"()"改变表达式的执行顺序.
运算符一般按照自左向右的顺序结合
练习
1、与 的练习,得出结果
(1 and 1)and (0 and 0)
2、或 的练习,得出结果
(1 or 1)or (0 or 1)
3、非的综合练习,得出结果
not(1 and 1) or ( 0 or 0)
not 1 and not 0
not(not 1 or not 0)
4、异或 的综合练习,得出结果
not(1 XOR 1) XOR (1 and 0)
(0 or 0) XOR (not 1 and not 1) or not(1 XOR 1)
部分答案如下:

在这里插入图片描述
6、二进制逻辑运算案例
根据上面与或非异或解释的运算规则,对应的二进制与或非异或的运算也是一样的。当然对应ABB为指令函数,与AND运算指令为,BitAnd用于在数据类型字节上执行一次逻辑逐位AND运算。或OR运算指令为,BitOr用于在数据类型byte上执行一次逻辑逐位OR运算。非NOT运算指令为,BitNeg用于在数据类型byte上执行逻辑逐位NEGATION运算。异或 XOR运算指令,BitXOr用于执行数据类型byte上的逻辑逐位XOR运算。

在这里插入图片描述
如上图解释,十进制数38对应二进制数为00100110,十进制数34对应二进制数00100010,进行AND与运算得到结果为二进制数00100010,同理转换为十进制数位34.
通过运行程序,验证一下结果是否正确,当然这里只演示逻辑与运算,其它三种逻辑运算,参考仿真软件指令帮助文档介绍去实现,问题应该不大。
程序截图,及运行结果如下图所示:

在这里插入图片描述

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值