半加器:和与进位
制作微型二进制计算器
半加器把两个位,即数字 0 或 1,相加。和位属于当前位置;进位把一个单位送到下一位,在那里它的数值是当前位置的两倍。
实验台
改变电路设置,预测读数,再检查挑战结果。这些是教学模型,每课都会说明模型的假设。
登录以保存学习进度. 访客进度保存在此设备上.
工作原理
理想二进制逻辑:0 表示低,1 表示高,不是测得的电压。不模拟电源、电流、输出负载或响应延迟;图示表示功能,不表示芯片引脚。
A、B 是输入,T 是普通总和,S 是和位,C 是进位。T = S + 2C。两个高输入得到 T = 2、S = 0、C = 1,即二进制 10。⊕ 是 XOR,Exclusive OR,异或:两位不同时为 1。
难度
搭建 · 搭建电路
接通电源,设置 A = 0、B = 1。得到 S = 1、C = 0。
需要提示?
A = 0; B = 1 → S = 1; C = 0
探索 · 改变输入
设置 A = 1、B = 1。得到 S = 0、C = 1。
需要提示?
A = 1; B = 1 → S = 0; C = 1
独立解题 · 完成挑战
设置 A = 0、B = 0。得到 S = 0、C = 0。
需要提示?
A = 0; B = 0 → S = 0; C = 0
延伸阅读与电路配方
制作微型二进制计算器
只需两盏输出灯就能从零数到二。一盏显示个位,另一盏显示值为二的那一位。
T = A + B; T = S + 2C; S = A ⊕ B; C = A × B
先读进位,再读和位。它们的位权为二和一,一起表示完整结果。
有用的规律
和位遵循 XOR;只有两个输入都是 1 时才有进位。两个不同逻辑函数描述同一次加法。
模型之外
半加器不能接收前一位的进位。全加器增加了缺少的第三个输入。
值得避开的误区
1 + 1 时和灯熄灭,不表示结果丢失。值为二的部分保存在进位中。
A = 1、B = 1。正确的二进制结果是?
- 01
- 10
- 11
延伸阅读
总和是二:进位 1、和位 0,按这个顺序写成 10。
搭建电路
设置 A = 0、B = 1。总和 1、和位 1、进位 0。
T = 1; S = 1; C = 0
改变输入
设置 A = 1、B = 1。总和 2、和位 0、进位 1。
T = 2; S = 0; C = 1
试试另一条路径
对每种组合交换 A、B。加法结果不受输入顺序影响。