布尔逻辑、逻辑门
二进制
1、用两种状态表示
2、只用开 / 关两种状态可以代表信息,表示 true 和 false
(1)电路闭合,电流流过,代表 true
(2)电路断开,无电流流过,代表 false
3、二进制也可以写成 1 和 0 而不是 true 和 false
4、晶体管可以不只是开 / 关,还可以让不同大小的电流通过
(1)早期电子计算机是三进制的,有 3 种状态,甚至五进制,5 种状态,状态越多,越难区分信号
(2)把两种信号尽可能分开,只用“开”和“关”两种状态
晶体管
1、电控制的开关
2、有 3 根线:2 根电极和 1 根控制线
3、控制线通电时,电流就可以从一个电极流到另一个电极
4、可以把控制线,当做输入;底部的电极,当做输出,所以 1 个晶体管,有一个输入和一个输出
(1)如果打开输入,输出也会打开,因为电流可以流过,用布尔术语来说,输入为真,输出为真
(2)如果关闭输入,输出也会关闭,因为电流无法通过,用布尔术语来说,输入为假,输出为假
5、可以把这个做成“真值表”,输入和输出是一样的
布尔代数
1、数学分支,专门处理“真”和“假”,已经解决了所有法则和运算
2、在“常规”代数里,变量的值是数字,可以进行加法或乘法之类的操作
3、在布尔代数中,变量的值是 true 和 false,能进行逻辑操作
4、布尔代数中有三个基本操作:NOT,AND 和 OR
NOT 操作
1、把布尔值反转,把 true 进行 NOT 就会变成 false,反之亦然
2、稍加修改,实现 NOT
3、与其把底部电极当做输出,可以把输出放到顶部电极
(1)如果打开输入,电流可以流过然后“接地”,输出就没有电流,所以输出是 off,即输入是 on,输出是 off
(2)当输入是 off,电流没法接地,就流过了输出,所以输出是 on,即输入是 off,输出是 on
4、该电路称为 NOT 门,之所以叫“门“,是因为它能控制电流的路径
AND 操作
1、有 2 个输入,1 个输出
2、如果 2 个输入都是 true,输出才是 true,其余情况输出 false
3、实现 AND 门,需要 2 个晶体管连在一起,这样有 2 个输入和 1 个输出
(1)如果只打开 A,不打开 B,电流无法流到 output,输出是 false
(2)如果只打开 B,不打开 A,电流无法流到 output,输出是 false
(3)只有 A 和 B 都打开了,output 才有电流
OR
1、只要 2 个输入里,其中 1 个是 true,输出就是 true
2、只有 2 个输入都是 false,OR 的结果才是 false
3、实现 OR 门 除了晶体管还要额外的线,不是串联起来,而是并联
(1)如果 A 和 B 都是 off,电流无法流过,所以输出是 off
(2)如果打开 A,电流可以流过,输出是 on,如果只打开 B 也一样,只要 A OR B 是 on, 输出就是 on
(3)如果 A 和 B 都 on,结果是 on
异或操作
1、简称 XOR
2、XOR 就像普通 OR,但有一个区别:如果 2 个输入都是 true,XOR 输出 false
3、想要 XOR 输出 true,一个输入必须是 true,另一个必须是 false
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战