简述半加器电路及其结构

简介: 在二进制数加法的情况下,过程是相同的。这里使用二进制数代替两个十进制数。在二进制中,我们只能得到两个数字1或0。这两个数字可以代表SUM或CARRY或两者。在二进制数字系统中,1 是 最大的数字,我们只在加法等于或大于 1 + 1时产生进位,因此,进位位将传递到下一列进行加法。

计算机使用二进制数01。加法器电路使用这些二进制数并计算加法。可以使用EX -ORAND门制作二进制加法器电路。求和输出提供两个元素,第一个是SUM,第二个是Carry Out

当我们在以 10 为底的数学中使用算术求和过程时,例如将两个数字相加


  • kvmhostodo.png

我们从右到左将每一列相加,如果相加大于或等于 10,我们使用进位。在第一个加法中,6+4 是 10。我们写 0 并将 1 带到下一列。因此,每个值都有一个基于其列位置的加权值。

在二进制数加法的情况下,过程是相同的。这里使用二进制数代替两个十进制数。在二进制中,我们只能得到两个数字10。这两个数字可以代表SUMCARRY两者。在二进制数字系统中,1最大的数字,我们只在加法等于或大于 1 + 1时产生进位,因此,进位位将传递到下一列进行加法。

主要有两种加法器:半加器和全加器。在半加器中,我们可以将 2 位二进制数相加,但我们不能在半加器中将进位位与两个二进制数相加。但是在全加器电路中,我们可以将位与两个二进制数相加。我们还可以通过级联全加器电路来添加多位二进制数。在本教程中,我们将重点介绍半加器电路,在下一个教程中,我们将介绍全加器电路。我们还使用一些 IC 来实际演示半加器电路

kvmhostodo.png

半加器电路:

下面是半加器的框图,它只需要两个输入并提供两个输出。

kvmhostodo.png

让我们看看可能的两位二进制加法,

第1位或数字

第 2位或数字

总和

CARRY OUT

0 0 0 0
1 0 1 0
0 1 1 0
1 1 0 1

第一个数字,我们可以表示为A和第二个数字,我们可以表示为B,加在一起,我们可以看到求和结果和进位位。在前三行0 + 0, 0 + 1 或 1+ 0加法是0 或 1但没有进位位,但在最后一行我们添加1 + 1  并产生一个进位位1结果0

因此,如果我们看加法器电路的操作,我们只需要两个输入,它就会产生两个输出,一个是加法结果,表示为SUM,另一个是CARRY OUT位。

半加器电路的构造:

我们已经看到了上面带有两个输入 A、B 和两个输出的半加器电路的框图 - Sum,Carry Out。我们可以使用两个基本门来制作这个电路

  1. 2 输入异或门或异或门
  2. 2输入与门

2 输入异或门或异或门

Ex-OR 门用于产生SUM位,AND Gate 用于产生相同输入 A 和 B 的进位位。

kvmhostodo.png

这是两个输入异或门的符号。AB是两个二进制输入,SUMOUT是两个数相加后的最终输出。

异或门的真值表是——

输入 A 输入 B 求和
0 0 0
0 1 1
1 0 1
1 1 0

在上表中,我们可以看到异或门的总和输出。当AB中的任何一个为1时,门的输出变为1。在另外两种输入均为01的情况下,异或门产生0输出。

2 输入与门:

X-OR 门只提供和,无法提供 1 + 1 的进位位,我们需要另一个门来进行进位。AND门非常适合此应用程序。

kvmhostodo.png

这是两个输入门的基本电路。与异或门一样,它有两个输入。如果我们在输入中提供AB位,它将产生一个输出。

输出取决于与门真值表-

输入 A

输入 B

进位输出

0

0

0

0

1

0

1

0

0

1

1

1

上面显示了与门的真值表,它只在两个输入都为1时才产生输出,否则如果两个输入都为0或任何一个输入为1,它就不会提供输出。

半加器逻辑电路:

因此,可以通过组合这两个门并在两个门中提供相同的输入来制作半加器逻辑电路。

kvmhostodo.png

这是半加器电路的结构,我们可以看到两个门组合在一起,两个门都提供相同的输入 A 和 B,我们在异或门上得到SUM 输出,在与门上得到进位位

半加器电路的布尔表达式是-

SUM = A XOR B (A+B)

进位 = A AND B (AB)

半加器电路的真值表如下-

输入 A

输入 B

和(异或)

携带(出)

0

0

0

0

1

0

1

0

0

1

1

0

1

1

0

1

半加器电路的实际演示:

我们可以在面包板上制作真实的电路以清楚地理解它。为此,我们使用了74系列74LS86和74LS08 中的两个广泛使用的XORAND芯片

两者都是门IC。74LS86 芯片内部有四个 XOR 门,74LS08 内部有四个 AND 门。这两个 IC 广泛可用,我们将使用这两个来制作半加器电路。

kvmhostodo.png

下面是这两款 IC 的引脚图:

kvmhostodo.png

使用这两个IC作为半加器电路的电路图-

kvmhostodo.png

我们在面包板上构建了电路并观察了输出。

kvmhostodo.png

在上面的电路图中,使用了 74LS86 的XOR 门之一,还使用了 74LS08 的AND门之一74LS86 的引脚 1 和 2 是门的输入,引脚 3 是门的输出,另一方面,74LS08 的引脚 1 和 2 是与门的输入,引脚 3 是门的输出。两个 IC 的第 7 引脚连接到 GND,两个 IC 的第 14引脚连接到 VCC。在我们的例子中,VCC5v。我们添加了两个LED来识别输出。当输出为1时,LED 将发光。

我们在电路中添加了DIP 开关以提供栅极输入,对于位1,我们提供5V作为输入,对于0,我们通过 4.7k 电阻器提供GND 。4.7k 电阻用于在开关处于关闭状态时提供0输入。


总结:半加器电路用于计算机中的位加法和逻辑输出相关操作。此外,它的一个主要缺点是我们无法在具有 A 和 B 输入的电路中提供进位位。由于这个限制,构建了全加器电路。


本文由IC先生www.mrchip.cn编辑整理,请勿转载。图片来源网络,侵权删。

相关文章
|
Linux
Linux下安装curl
Linux下安装curl
2471 0
|
4月前
|
人工智能 安全 数据可视化
面向业务落地的AI产品评测体系设计与平台实现
在AI技术驱动下,淘宝闪购推进AI应用落地,覆盖数字人、数据分析、多模态创作与搜推AI化四大场景。面对研发模式变革与Agent链路复杂性,构建“评什么、怎么评、如何度量”的评测体系,打造端到端质量保障平台,并规划多模态评测、可视化标注与插件市场,支撑业务持续创新。
900 38
|
Linux Shell Python
python第三方库 pip install速度慢的解决办法
python第三方库 pip install速度慢的解决办法
787 0
|
存储 Dubbo Java
分布式 RPC 底层原理详解,看这篇就够了!
本文详解分布式RPC的底层原理与系统设计,大厂面试高频,建议收藏。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
分布式 RPC 底层原理详解,看这篇就够了!
|
运维 负载均衡 测试技术
软件负载均衡和硬件负载均衡分别适合哪些场景?
软件负载均衡和硬件负载均衡分别适合哪些场景?
389 55
|
人工智能 搜索推荐 数据挖掘
销售易CRM:用户体验与实际应用深度分析
销售易CRM是国内领先的客户关系管理系统,以其现代化的界面设计、强大的移动端支持和优质的客户服务著称。系统操作简洁直观,支持个性化定制和多设备访问,确保随时随地办公。移动端功能齐全,提供实时协同工具和离线支持,极大提高工作效率。销售易CRM还注重客户服务,提供快速响应、专业培训和持续优化。实际应用案例显示,该系统帮助中大型企业和成长型企业实现销售流程数字化管理,提升销售效率和客户满意度,是企业数字化转型的理想选择。
|
机器学习/深度学习 PyTorch 编译器
PyTorch 与 TorchScript:模型的序列化与加速
【8月更文第27天】PyTorch 是一个非常流行的深度学习框架,它以其灵活性和易用性而著称。然而,当涉及到模型的部署和性能优化时,PyTorch 的动态计算图可能会带来一些挑战。为了解决这些问题,PyTorch 引入了 TorchScript,这是一个用于序列化和优化 PyTorch 模型的工具。本文将详细介绍如何使用 TorchScript 来序列化 PyTorch 模型以及如何加速模型的执行。
872 4
|
安全 关系型数据库 API
Nuxt3 实战 (九):使用 Supabase 实现 Github 认证鉴权
这篇文章介绍了如何在Supabase中使用Github授权登录并实现用户身份验证。文章首先说明了Supabase采用postgresql的Row Level Security(RLS)机制来控制不同用户对数据表访问权限的重要性,然后详细介绍了配置Github OAuth Apps的过程,包括创建新的OAuth应用、填写项目信息、设置回调URL等步骤。接着,文章展示了在Nuxt3中实现登录界面的代码示例,最后总结了通过本教程可以学习到的技能,并预告了下一篇文章将介绍如何在Nuxt3中创建RESTful风格API并结合Supabase数据库完成CURD操作。
661 0
Nuxt3 实战 (九):使用 Supabase 实现 Github 认证鉴权
|
Unix Linux C语言
`ctypes`是Python的一个标准库,它提供了C兼容的数据类型,并允许在Python中调用共享库中的函数。
`ctypes`是Python的一个标准库,它提供了C兼容的数据类型,并允许在Python中调用共享库中的函数。

热门文章

最新文章