5、二进制算数运算逻辑

发布时间 2023-10-08 17:50:19作者: 澜璨

1、二进制四则运算(加减乘除)

1.1、加减乘除

image-20220726233833671

1.2、关于除法

image-20220726233721190

  • 为什么只有0/1和1/1?
  • 因为除数不能为0,也就是分母不能为0,所以没有1/0和0/0,因为不符合算数逻辑

1.3、例题

image-20220726234000494

解题思路,笔试运算

image-20220726235220355

2、二进制逻辑运算(与 或 非 异或)

2.1、逻辑与运算 ^(逻辑乘,类似&&)

image-20220726235629748

  • 只要0存在,那么逻辑与运算就是0,你可以理解为在二进制当中有任意一边为0,那么乘下来的结果就必然是0
  • 二进制的逻辑与运算,只有两边都是1的情况下,最终结果才是1
  • 逻辑与运算就是代码当中的&&

2.2、逻辑或运算,倒三角(逻辑加,类似||)

image-20220726235951093

  • 只要有一个为真,那么结果就是为真
  • 逻辑与相反全0才为0

2.3、逻辑非运算,感叹号(类似!取反)

image-20220727000035097

  • 这个很像代码当中的取反
  • 也就是跟他上述所说的,0变为1,1变为0

2.4、逻辑异或运算

image-20220727000209458

  • 相同为0,不同为1
  • A == B,那么结果为0
  • A != B,那么结果为1

2.5、例题

image-20220727000333938

1、与运算

image-20220727001921012

  • 这里是瞎猫碰上死耗子了,我下意识写出了这个结果
  • 也侧面说明我的四则运算当中的乘法是有问题的,需要多练习
  • 运算的根本就是每个对应的位数之间进行与运算比较
  • 我们从右往左看(与运算的根本是:全1为1,否则为0,也就是&&只要有一个不为真,那么就是假)
    1. 0^1 = 0
    2. 1^0 = 0
    3. 0^1 = 0
    4. 1^1 = 1
  • 从下往上,那么结果为1000

2、或运算(加运算,注意,此加非彼加)

image-20220727002238171

  • 还是一样的,我犯了个毛病,我把他当做加运算了
  • 实际上还是每个位数之间,单独进行或运算
  • 口诀为什么?(只要存在一个真,那么结果就为真,只有全为假的时候才能是假
    1. 0或1 = 1
    2. 1或0 = 1
    3. 0或1 = 1
    4. 1或1 = 1
  • 那么结果就是 1111

3、非运算

image-20220727002449879

  • 这里的非运算没有太多毛病,注意一点即可
  • 逻辑运算是不能省略位数的,我就省略了前面的0

4、逻辑异或运算

image-20220727002546319

  • 这个也没什么注意的,就记住口诀就行了
  • 我自己的理解是(A==B那么结果为0,A != B那么结果为1)
  • 做错的原因是我第一次做