1、二进制四则运算(加减乘除)
1.1、加减乘除
1.2、关于除法
- 为什么只有0/1和1/1?
- 因为除数不能为0,也就是分母不能为0,所以没有1/0和0/0,因为不符合算数逻辑
1.3、例题
解题思路,笔试运算
2、二进制逻辑运算(与 或 非 异或)
2.1、逻辑与运算 ^(逻辑乘,类似&&)
- 只要0存在,那么逻辑与运算就是0,你可以理解为在二进制当中,有任意一边为0,那么乘下来的结果就必然是0
- 二进制的逻辑与运算,只有两边都是1的情况下,最终结果才是1
- 逻辑与运算就是代码当中的&&
2.2、逻辑或运算,倒三角(逻辑加,类似||)
- 只要有一个为真,那么结果就是为真
- 与逻辑与相反,全0才为0
2.3、逻辑非运算,感叹号(类似!取反)
- 这个很像代码当中的取反
- 也就是跟他上述所说的,0变为1,1变为0
2.4、逻辑异或运算
- 相同为0,不同为1
- A == B,那么结果为0
- A != B,那么结果为1
2.5、例题
1、与运算
- 这里是瞎猫碰上死耗子了,我下意识写出了这个结果
- 也侧面说明我的四则运算当中的乘法是有问题的,需要多练习
- 与运算的根本就是每个对应的位数之间进行与运算比较
- 我们从右往左看(与运算的根本是:全1为1,否则为0,也就是&&,只要有一个不为真,那么就是假)
- 0^1 = 0
- 1^0 = 0
- 0^1 = 0
- 1^1 = 1
- 从下往上,那么结果为1000
2、或运算(加运算,注意,此加非彼加)
- 还是一样的,我犯了个毛病,我把他当做加运算了
- 实际上还是每个位数之间,单独进行或运算
- 口诀为什么?(只要存在一个真,那么结果就为真,只有全为假的时候才能是假)
- 0或1 = 1
- 1或0 = 1
- 0或1 = 1
- 1或1 = 1
- 那么结果就是 1111
3、非运算
- 这里的非运算没有太多毛病,注意一点即可
- 逻辑运算是不能省略位数的,我就省略了前面的0
4、逻辑异或运算
- 这个也没什么注意的,就记住口诀就行了
- 我自己的理解是(A==B那么结果为0,A != B那么结果为1)
- 做错的原因是我第一次做