电脑是如何进行数据计算的呢? #计算机(电脑是如何进行数据计算的呢英语)

发明计算机的人真是个天才。计算机执行的所有计算都可以分解成一系列简单的数学运算。计算机不断地进行数字相加、相乘、比较大小、移动数字等操作,以便高效地解决问题。为了使这些操作变得实用,计算机需要能够快速执行这些操作。

以其中一种操作为例,计算机如何进行数字相加?又如何能够快速地解决复杂的问题?其基本策略与人计算数字并没有太大的区别。

·如果要将两组数字相加,可能会一次处理一对数字,先加第一对数字,然后是下一对,依此类推。有时可能会加一对数字,并留下一个进位,然后影响下一对数字的加法。计算机也是这样做的,只不过是用二进制位代替十进制数字。

一个称为全加器的电路可以将两个位相加,还可能有一个进位位,然后它产生一个和及可能的进位。例如,如果用输入进位位为0来相加1和0,则和将是1而没有输出进位。但是如果用输入进位位为1来相加1和0,那么情况就变了。现在输出一个进位为1,而和位为0。

电脑是如何进行数据计算的呢? #计算机(电脑是如何进行数据计算的呢英语)

这些全加器在位上执行非常简单的操作,但可以将它们组合起来,以相加更大的数字。要将两个四位数相加,可以将四个全加器串联成一个脉动进位加法器。第一个全加器将右侧位相加并产生一个和,它还将一个进位位传递给下一个全加器,后者计算出一个和,并将可能的进位位传递给下一个加法器

通过连接足够多的这些单位加法器,可以设计出添加数字尺寸任意大的电路。但随着相加的数字变得更大,会注意到加法所需的时间越来越长,大多数加法器大部分时间都在等待传递进位位,以便开始计算,但这并不是很有效的时间利用。

电脑是如何进行数据计算的呢? #计算机(电脑是如何进行数据计算的呢英语)

理想情况下,所有这些加法器都希望立即开始计算它们的和,但它们不能,因为它们的和取决于上一个加法器是否有进位输出。进位前瞻逻辑在这里就可以发挥重要作用。在进位前瞻加法器中,基本思想是添加逻辑,来快速且同时地计算所有进位,并将它们传递给需要的加法器。这使得单个位加法器无需等待所有先前的加法器即可完成工作。

但这是如何实现的?这个进位前瞻加法器如何知道所有进位是什么而不必进行完整的加法?为了回答这个问题,让我们看看其中一个单位加法器并考虑它是否会产生进位。

根据输入值,我们可能能够对这个加法作出一些断言。对于某些输入值,我们可能会说这个加法"产生"进位。产生进位意味着无论是否有输入进位,加法都会产生一个进位。如果要添加的两个位都是1,则会出现这种情况。当两个1相加时,无论是否有输入进位都会产生一个进位输出,因此我们说这个加法会产生一个进位。

电脑是如何进行数据计算的呢? #计算机(电脑是如何进行数据计算的呢英语)

更正式地说,如果我们要相加的两个位是A和B,则我们可以说该加法会在A和B都是1时产生一个进位。对于其他输入值,我们可能会说这个加法"传播"进位。传播进位意味着如果有输入进位,则会有一个输出进位。

例如,如果输入位是1和0,则这个加法会传播进位;如果有输入进位,则输出也会有进位。但如果输入位都是两个0,则该加法不会传播进位。即使有输入进位,也不会有输出进位。换句话说,如果我们要相加的两个位是A和B,则当A或B是1时,该加法会传播进位。

电脑是如何进行数据计算的呢? #计算机(电脑是如何进行数据计算的呢英语)

从产生和传播进位的角度考虑,这些单位加法的思路有两个用处。

·首先,对于每一对位,我们可以立即计算出该加法是否产生或传播进位,而不需要等待任何其他计算的结果。这意味着当加法开始时,我们可以同时计算所有位对的这些产生和传播值。

·其次,我们可以使用这些产生和传播值来计算所有的进位。对于任何给定的位相加,我们可以按照以下方式计算出进位输出。如果加法产生进位,或者如果有输入进位且加法传播进位,则加法会产生一个进位为1。

我们可以利用这个思想得到这个四位加法器中每个进位的公式。假设我们正在相加的只是这四位数,没有进位输入到它们,那么第一次加法的进位输出就等于该加法是否产生进位。第二次加法的进位输出为1,如果第二次加法产生进位。或者如果第一次加法产生进位,且第二次加法传播了该进位,第三次加法的进位输出为1。如果第三次加法产生进位,或者如果第二次加法产生了进位,且第三次加法传播了该进位,或者如果第一次加法产生了进位,且第二次和第三次加法都传播了该进位。

电脑是如何进行数据计算的呢? #计算机(电脑是如何进行数据计算的呢英语)

也许你可以看到这里形成了一个模式,我们可以为第四次加法的进位输出构建类似的公式。注意,所有这些公式都是根据我们可以快速计算和同时计算的产生和传播值计算出来的。这些公式本身也可以快速计算,将公式中的这些单独项进行与运算只需一个逻辑步骤,然后再进行或运算将这些项组合在一起以得到进位值。

电脑是如何进行数据计算的呢? #计算机(电脑是如何进行数据计算的呢英语)

这是第二步,结果是当相加的两个四位数的第一对位被相加时,我们可以计算出传播和产生值,并开始将它们组合起来,这样就得到了所有的进位值,然后可以将它们传递给所有其他单个位加法器,以便它们可以同时进行工作。

理论上,随着我们相加的数字越来越大,通过这种进位前瞻逻辑节省的时间也越来越多。在传统的脉动进位加法器中,添加更大的数字意味着等待时间更长。因为进位从一个加法器传递到下一个加法器,但在进位前瞻加法器中,我们可以一次计算出所有进位。

然而在实践中,计算后面的进位的公式,随着项数增多而变得更大。用两个步骤计算出这些公式的电路也不再那么实用。相反,我们经常会将四位进位前瞻加法器的逻辑封装在一起,然后将它们串联起来以构建一个更大的加法器。每个四位加法器可以依次运行,并将进位传递给下一个。

电脑是如何进行数据计算的呢? #计算机(电脑是如何进行数据计算的呢英语)

但是现在我们知道了一个更有效的方法来做到这一点,我们可以再次使用进位前瞻逻辑,只是在更大的范围内,每个四位组现在可以为其组计算生成和传播值,而较大的进位前瞻单元可以使用该信息来计算出每个四位加法器的进位,以便它们可以在不等待彼此的情况下并行地工作。

在添加大数时应用进位前瞻逻辑可以节省大量时间。当我们谈论电路时,这段时间以纳秒为单位衡量,但当计算机执行数十亿次操作时,这些纳秒就会累加起来。

通过利用计算机电路可以同时执行多个任务的事实,我们的逻辑现在更快了。因此,通过给予它们多个任务,它们可以在不需要等待其他逻辑完成的情况下执行任务,从而使我们的计算更加高效。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2024年4月12日 下午5:11
下一篇 2024年4月12日 下午5:23

相关推荐

  • 软件项目管理 7.4.4.进度计划编排-资源优化法(软件项目管理进度规划)

    【公众号@ “项目管理研究所” 将会第一时间更新文章并分享《行业分析报告》】 归档于软件项目管理初级学习路线第七章 软件项目进度计划《初级学习路线合集 》 前言 大家好,这节我们学…

    2022年7月23日
    290
  • 护理科研项目立项答辩ppt模板

    护理科研项目立项答辩PPT模板 在护理科研项目立项答辩中,演示文稿的设计非常重要。它可以帮助护士展示他们的研究计划,向评委展示他们的研究目标、方法和结果。以下是一份护理科研项目立项…

    科研百科 2024年4月10日
    100
  • 怎么在家里搞科研项目的人

    在家里搞科研项目是一种很有趣的方式来探索科学领域。对于那些希望更深入地了解科学,但缺乏实验室设备或时间的人来说,在家里搞科研项目可能是一个不错的选择。在本文中,我们将讨论如何在家里…

    科研百科 2024年4月9日
    85
  • 主要参与工程科研项目

    我主要参与了一些工程科研项目,这些项目涉及各种不同的领域,包括基础设施建设、环境保护和科技创新等。在这些项目中,我担任了一些关键的角色,比如项目规划、设计、实施和评估等。 作为一名…

    科研百科 2025年3月19日
    0
  • 科研项目 查询

    科研项目查询 随着科技的不断进步,科研项目查询也成为了人们日常生活中不可或缺的一部分。科研项目查询不仅可以让人们快速获取最新的科研项目信息,还可以为科学家们提供宝贵的研究资源。 科…

    科研百科 2025年2月13日
    0
  • 池州启用长三角地区政务服务“一网通办”专窗(池州人民政府政务服务中心)

    池州新闻网讯(记者石泽丰)5月10日,池州市政务服务大厅按照长三角地区政务服务“一网通办”综合服务专窗运行规范、技术方案和技术标准要求,正式设立了长三角“一网通办”专窗。 长三角“…

    科研百科 2022年8月19日
    297
  • 工程质量项目管理软件

    工程质量项目管理软件 随着现代建筑行业的快速发展,工程质量项目管理已经成为一个越来越重要的话题。传统的手动项目管理方式已经不能满足现代工程管理的需要进行,因此,工程质量项目管理软件…

    科研百科 2024年7月22日
    55
  • 东庄镇举办“灯塔-党建在线”平台管理使用培训班2018-11-29(灯塔党建在线介绍)

    【今日东庄】东庄镇举办“灯塔-党建在线”平台管理使用培训班 2018-11-29 16:58 为扎实做好“灯塔-党建在线”平台管理使用工作,进一步强化全镇党务干部“灯塔-党建在线”…

    科研百科 2023年2月27日
    915
  • 客户关系管理实践

    客户关系管理实践 客户关系管理(CRM)是一种通过技术手段和数据分析,实现客户信息的收集、存储、管理和分析,从而提升客户满意度、增加销售额、降低客户流失率等手段。在商业领域中,CR…

    科研百科 2024年10月1日
    27
  • 博奥智能项目管理系统定制开发(博奥智能科技有限公司)

    博奥智能项目管理系统定制开发是基于博奥智能多年的项目经验及智能化技术沉淀,充分结合客户实际需求,深度挖掘客户的业务场景,通过专业的项目管理方案设计、优秀的研发团队实施,满足各行业各…

    科研百科 2023年5月18日
    263