看完以上内容,点击页面下方的「下一步」。
每项任务完成时举手示意并拍照保存,后续会有提醒。
跟着左侧讲解、右侧动手演示,一步一步来
找到 红色的与门电路板,把背后的 「供电口」 接上 Type-C 线,再通过电源适配器连到插座;闭合线上的开关,「工作中」 灯亮即正常。其他板子通过 磁吸 连到已经通电的电路板上,直到各电路板 「工作中」 灯都亮起
点击右边的图片可以放大浏览
日常使用的是 十进制数,逢十进一,所以有了个位数、十位数和百位数。
十位数加一,原数加十;百位数加一,原数加一百。
今天要动手造一台 二进制计算器,采用二进制来计算。
二进制是 逢二进一,所以二进制下的“十位数”加一,原数加二;“百位数”加一,原数加四。
二进制运算方式与十进制相同,只有进位方式不同。
例:十进制 5 的二进制是 101,二进制 110 的十进制是 6,二进制 1011 的十进制是 11。
回忆中学物理的 串联开关:两个开关串联,只有当它们 同时闭合 时,电路才会导通
生活中哪里会用到 串联开关?
与门,它的功能等同于 串联开关,但它执行的是二进制运算(高电平代表一,低电平代表零),输入二进制数 A 和 B,输出 C,实现「只有 A 和 B 同时为一,C 才为一」的运算,用公式表示:
口诀:「全一为一,有零为零」
串联电路和与门有什么不同,为什么不用串联电路实现逻辑运算?
第二个基础逻辑门是 或门,它实现的是「只要有一个输入条件为一,输出就为一」,用公式表示:
口诀:「有一为一,全零为零」
用 并联开关 来理解:只要开关 A 或 开关 B 至少一个闭合,灯 C 就亮。
点击右侧并联开关模拟器的开关 A、B,验证 4 种组合。
生活里哪些场景会用到 并联电路?
第三个基础逻辑门是异或门,它实现了「两个输入相同时输出零,输入不同时输出为一」的逻辑。
口诀:「相同为零,不同为一」
怎么用三种基础逻辑门实现加法 ?
回顾 二进制加法规则:0+0=0,1+0=1,0+1=1,1+1=10。
能否用 逻辑门 实现 1 位二进制加法?列出真值表:
| A | B | C(进位) | S(和) | 说明 |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 + 0 = 0(二进制 00) |
| 0 | 1 | 0 | 1 | 0 + 1 = 1(二进制 01) |
| 1 | 0 | 0 | 1 | 1 + 0 = 1(二进制 01) |
| 1 | 1 | 1 | 0 | 1 + 1 = 2(二进制 10) |
观察 A、B、C,真值表和什么逻辑门相同?A、B、S 呢?
异或门 实现了 仅个位的 1 位二进制加法,那么 半加器 实现的是考虑了进位的 1 位二进制加法:0+0=0,0+1=1,1+0=1,1+1=2(2 的二进制是 10),实现的计算是 A+B=C*2+S。
进位 C 用 与门 算,和的低位 S 用 异或门 算:
用右侧模拟器点击 A、B,同时观察两个输出:
S = A ⊕ BC = A ∧ B若要做 1+1+1(三个数相加),半加器够吗?缺了什么?
=1)的输入 A1、B1 接 A、B&)的输入 A2、B2 接 A、B提示:电路板的背面有小抄
实际电路常把半加器集成在 芯片 里,验证一下 半加器芯片 的功能和任务 1 用逻辑门搭建的半加器 功能是否相同。
实现相同逻辑的前提下,用芯片实现有什么好处?
把半加器输出接到 七段数码管,就能把二进制翻译成人类能看懂的数字。
点击右侧的 A3–A0 输入 4 位二进制,看数码管显示:
用数码管对半加器的计算进行可视化:
但它只能算 0+0=0、0+1=1、1+0=1、1+1=2,怎么改进?
做多位加法前,先实现 全加器。它在半加器基础上多了一个 进位输入 Cin,实现的是 Cin+A+B = Cout*2+S 的运算。
计算 1+1+1:输入 A=1,B=1,Cin=1,求和得到 S=1,Cout=1,即 1+1+1=3(二进制 11)。
全加器 = 2 个半加器 + 1 个或门。
两个 半加器 和 或门 的职责:
用右侧模拟器点击 A、B、Cin,观察 中间结果 和 最终输出:
用加法器板上的 全加器芯片 已经实现了全加器的功能。
| Cin | A | B | Cout | S | 解释 |
|---|---|---|---|---|---|
| 1 | 0 | 0 | 0 | 1 | 1+0+0=1(二进制 01) |
| 0 | 1 | 0 | 0 | 1 | 0+1+0=1(二进制 01) |
| 1 | 1 | 1 | 1 | 1 | 1+1+1=3(二进制 11) |
把多个全加器 级联 起来,即可做任意位数的加法。以 2 位加法器为例:
每一位的 Cout 都连到高一位的 Cin,进位像「水波」一样往上传播,这就是串行进位加法器。
用右侧模拟器设置两个 2 位二进制数,看进位如何在两个全加器之间传播:
你造出了可以计算更大的两个数的加法的计算器!随着级联的全加器数量增加,能计算的数会越来越大
| 组件 | 逻辑表达式 |
|---|---|
| 与门 | C = A ∧ B |
| 或门 | C = A ∨ B |
| 异或门 | C = A ⊕ B |
| 半加器 | S = A ⊕ B,C = A ∧ B |
| 全加器 | S = A ⊕ B ⊕ Cin,Cout = (A∧B) ∨ ((A⊕B)∧Cin) |
点击左上角的「☰」可以随时回到任意一步复习。