关于与或运算的一些理解
程序里的运算无非是二进制比较,在二进制里只有0和1,那么我们先制定一个规则:非0为真(1)
而运算的目的就是想要得到:真(1
后面的运算解析也会按着这个思路去理解
# 与运算
与
在中文有一起
,和
的意思。
所以可以这样理解:大家好才是真的好,大家都是真才是真的真。
即:只有左右两边都为1时,结果为1,否则结果为0。
结论
有0为0
# 或运算
或
在中文有任意
的意思。
可以理解为:左右互搏术,谁动手(出1)都是自己挨打
即:只要左边为1或者右边为1,则结果为1,否则则为0
结论
有1取1
# 异或
这个可拆开理解
异
代表不同
, 异或
:则可以理解为不同则执行或运算。
同时,不同就意味着存在1
, 而在或运算的规则是有1则取1
, 那么不同
结果必定为1
。
那么如果左右两边相等,则违背了第一个异
,那么结果就不能为真(1)
了
基于上述,可以这样理解:
如果,左右两边相等,则取1
如果,左右两边不相等,则取0
结论
不同取1,相同取0
上次更新: 2024/11/05, 08:29:31