计算机科学速成课 Crash Course Computer Science 第三集 布尔逻辑和逻辑门 Boolean Logic & Logic Gates

GitHub链接:https://github.com/WilliamWuLH/My-notes-about-CCCS
如果你觉得不错可以 ⭐Star 和 Fork ❤

计算机科学速成课 Crash Course Computer Science

第三集 布尔逻辑和逻辑门 Boolean Logic & Logic Gates

二进制

二进制(Binary)为用两种状态表示,若只需要表示true和false,则两个值足够。电路闭合,电流流过,代表“真”,电路断开,无电流流过,代表“假”,二进制也可以表示为1和0。

一些早期的电子计算机是三进制的,有三种状态,甚至五进制,问题在于状态越多就越难区分信号,所以将两种信号尽可能分开,只用on和off两种状态可以尽可能减少这类问题。

布尔代数

布尔代数(Boolean Algebra)专门处理true和false,已经解决了所有法则和运算,这也是计算机使用二进制的原因。

乔治·布尔(George Boole)是布尔二字的由来,布尔用逻辑方程系统而正式的证明真理,他在1847年的第一本书“逻辑的数学分析”(The Mathematical Analysis of Logic)中介绍过。

在布尔代数中,变量的值是true和false能进行逻辑操作,布尔代数中有三个基本操作:NOT,AND和OR。

NOT

NOT操作把布尔值反转,把true进行NOT就会变成false,反之亦然。

INPUTOUTPUT
TRUEFALSE
FALSETRUE

晶体管:把控制线当做输入(input),把底部的电极当做输出(output),一个晶体管有一个输入和一个输出。如果打开输入(input on),输出也会打开(output on),因为电流可以流过;如果关闭输入(input off),输出也会关闭(output off),因为电流无法通过。

使用晶体管实现NOT GATE:把控制线当做输入(input),把上面的电极当做输出(output),下面的电极接地。

在这里插入图片描述

在这里插入图片描述

AND

AND操作有2个输入,1个输出。

INPUT AINPUT BOUTPUT
TRUETRUETRUE
TRUEFALSEFALSE
FALSETRUEFALSE
FALSEFALSEFALSE

晶体管实现AND GATE:需要两个晶体管连在一起,这样有2个输入和1个输出。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

OR

OR操作有2个输入,1个输出。

INPUT AINPUT BOUTPUT
TRUETRUETRUE
TRUEFALSETRUE
FALSETRUETRUE
FALSEFALSEFALSE

晶体管实现OR GATE:除了晶体管之外还要额外的线。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

符号抽象

进行抽象:

  1. NOT门的画法是三角形前面一个圆点:
    在这里插入图片描述
  2. AND门:
    在这里插入图片描述
  3. OR门:
    在这里插入图片描述

晶体管和电线依然在那里,只是用符号来代表。

XOR

另一个有用的布尔操作:异或XOR

XOR操作有2个输入,1个输出。

INPUT AINPUT BOUTPUT
TRUETRUEFALSE
TRUEFALSETRUE
FALSETRUETRUE
FALSEFALSEFALSE

可以通过前面提到的3种门来做XOR门:可以先放一个OR门,因为OR和XOR的逻辑表很相似,现在的问题是当A和B都为true时,OR的输出和想要的XOR输出不一样,通过以下的电路可以实现:

在这里插入图片描述

XOR门:
在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值