0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

从抽象层面带大家感受一下计算机复杂的一面

h1654155971.8456 来源:EDA365 2020-05-07 11:09 次阅读

昨天探讨了关于计算机是怎样一步步被人类不断推进演变的过程,今天,我们将从抽象层面带大家感受一下计算机复杂的一面。

从昨天讲的,我们可以发现不论是通过装置上的一个单位,还是通过晶体管控制开关,计算机给我们的状态只有“开”和“关”,虽然只有两个状态,但是我们仍然可以用这两种状态表达很多重要的信息,这就是所谓的“二进制”。

你是不是很疑惑:既然二进制只有两个状态,那它肯定不能完成很复杂的工作咯?

答案是:是的,但是它却可以准确的表示你需要的值:‘true’和‘false’。

在计算机中,状态为“开”时,电流流过,用true表示;状态为“关”时,电流停止,用false表示。通常情况下,也会用0和1来表示二进制的状态。

上篇文章我们讲晶体管可以用来控制电流的开启和关闭,其实不然,晶体管还可以用来控制不同的电流水平。

早期某些电子计算机是三进制或五进制,表示他们的状态有3种或5种,但问题是:像这种状态层级越多,状态之间的区分也就会越模糊。

晶体管每秒有数百万次的变化,那中间存在的问题也会变得更加糟糕。

因此,将两个信号放在尽可能远的地方,即只使用 "开" 和 "'关"的状态,这样就可以在很多干扰问题种区分最明显的信号问题。

其实在计算机种使用二进制还有一个原因,那就是二进制在数学中有成熟的分支,它是专门用来处理‘true’和‘false’的问题,而且数学家们也已经研究出了操作二进制的所有必要的规则和方法,这个分支被称为“布尔代数”。

“布尔代数”来源于一位19世纪自学数学的英国数学家 'George Boole' ,他致力于研究亚里士多德的逻辑理论,亚里士多德逻辑法是以哲学为基础,Boole的方法则是使用逻辑方程式的方法去判断真假,这一方法在1847年他的第一本书《逻辑的数学分析》中提出。

通常我们学习到的都是常规代数,变量为数字,并对这些数字进行加减乘除等运算,但在布尔代数中,变量为‘true’和‘false’,并对这些变量进行逻辑处理。

布尔代数中的三个基本操作:“非”、“与”、“或”,这些操作都有他们自己独特的作用。

“非(NOT)”作用于单个布尔值,无论其是true或false,都会将其反转,即true转换为false,false转换为true。

在布尔值中,当输入为true时,输出为true;当输入false时,输出false,它并没有进行任何操作。

如果我们对其稍作修改,例如创建一个“非”电路,如果输入true,则输出为false;如果输入false时,输出将会是true,我们将刚刚创建的“非”电路称为“非”门。

“与(AND)”作用于最少两个输入,但是只有一个输出。只有当所有输入都为true时,输出true,但如果输入有一个false,那输出就是false。

最后一个布尔运算为“或(OR)”:只要有一个输入为true,那么输出为true,如果输入都为false,那输出就是false。

上面我们对非、与、或门有了一定的了解,现在我们看看这三种门的表示符号吧!

标准工程师们使用三角形加小圆点表示非:

一个D形状的图标表示与:

一个像宇宙飞船一样的图标表示或:

这些图标和思想可以在我们构建更大组件的同时,去控制好整体的相对复杂度,但是那些晶体管和电路的复杂依然存在。

举个例子:在其他有用的布尔运算中有个被称之为“异或(XOR)”的方法。

异或和或很像,只是如果输入都为false,那输出就是false。只有一种情况下异或会输出true,就是当一个输入为true,另一个输入为false时。

异或门在实际应用中是很必要的,因此工程师们也给了它一个单独的标志:一个带着笑脸的或门:

最重要的是,我们不需要太过于操心其中各个逻辑门的构成,以及这些门该如何用晶体管去搭建,又或者如何让这些电子在半导体中流通。

因为当计算机工程师在设计处理器时,很少会考虑晶体管层面是如何工作的,他们通常使用的是更大的区块,例如逻辑门,或者由逻辑门组成的更大的组件。

即便你是专业的程序员,也很少去思考如何直接在物理层面用这些极小的组件去实现你的程序逻辑。

当然,我们也将思考的重心从原始的电子流动,转移到了用数据表示来替代:如true和false,这让我们的思维方式又一次接近了计算机本身。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 二进制
    +关注

    关注

    2

    文章

    794

    浏览量

    41606
  • 计算机
    +关注

    关注

    19

    文章

    7434

    浏览量

    87748
  • 晶体管
    +关注

    关注

    77

    文章

    9641

    浏览量

    137894

原文标题:还记得“非”“与”“或”“异或”门的逻辑关系吗?

文章出处:【微信号:eda365wx,微信公众号:EDA365电子论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    量子计算机与普通计算机工作原理的区别

      本文介绍了量子计算机与普通计算机工作原理的区别。 量子计算个新兴的研究领域,科学家们利用量子力学,制造出具有革命性能力的计算机。虽然
    的头像 发表于 11-24 11:00 148次阅读
    量子<b class='flag-5'>计算机</b>与普通<b class='flag-5'>计算机</b>工作原理的区别

    计算机主机内部结构

    计算机主机的内部结构是复杂而精密的系统,它包含了多个关键组件,这些组件协同工作以实现计算机的各种功能。以下是对计算机主机内部结构的详细解
    的头像 发表于 09-26 16:40 517次阅读

    计算机系统的组成和功能

    计算机系统是复杂而庞大的概念,它涵盖了计算机硬件、软件以及它们之间相互作用的所有元素。为了全面而深入地探讨计算机系统,本文将从定义、组成
    的头像 发表于 07-24 17:41 768次阅读

    计算机视觉的工作原理和应用

    计算机视觉(Computer Vision,简称CV)是门跨学科的研究领域,它利用计算机和数学算法来模拟人类视觉系统对图像和视频进行识别、理解、分析和处理。其核心目标在于使计算机能够
    的头像 发表于 07-10 18:24 1700次阅读

    工业计算机与普通计算机的区别

    在信息化和自动化日益发展的今天,计算机已经成为了我们日常生活和工作中不可或缺的工具。然而,在计算机领域中,工业计算机和普通计算机虽然都具备基本的计算
    的头像 发表于 06-06 16:45 1253次阅读

    这个“六一”,起组装人生第台量子计算机

    自主量子计算机群开放授课活动”上30多名少先队员在“本源悟空”硬件研制团队负责人孔伟成博士的指导动手组装人生第台量子计算机与中国第三代自主超导量子
    的头像 发表于 06-02 08:22 276次阅读
    这个“六一”,<b class='flag-5'>一</b>起组装人生第<b class='flag-5'>一</b>台量子<b class='flag-5'>计算机</b>

    计算机图形学:探索虚拟世界的构建之道

    计算机图形学是计算机科学的个分支,它专注于创建和操纵计算机生成的视觉和图形内容。这领域涵盖了
    的头像 发表于 05-07 08:27 362次阅读
    <b class='flag-5'>计算机</b>图形学:探索虚拟世界的构建之道

    【量子计算机重构未来 | 阅读体验】 跟我起漫步量子计算

    首先感谢发烧友提供的试读机会。 略读周,感触颇深。首先量子计算机作为种前沿技术,正逐步展现出其巨大的潜力,预示着未来社会和技术领域的深刻变革。下面,我将从几个方面探讨量子计算机
    发表于 03-13 19:28

    【量子计算机重构未来 | 阅读体验】+ 了解量子叠加原理

    如何生产制造。。。。。。 近来通过阅读《量子计算机—重构未来》书,结合网络资料,了解了点点量子叠加知识,分享给大家。 先提一下电子
    发表于 03-13 17:19

    【量子计算机重构未来 | 阅读体验】+量子计算机的原理究竟是什么以及有哪些应用

    本书内容目录可以看出本书主要是两部分内容,部分介绍量子计算机原理,部分介绍其应用。 其实个人也是抱着对这两个问题的兴趣来看的。 究竟什么是量子
    发表于 03-11 12:50

    【量子计算机重构未来 | 阅读体验】+ 初识量子计算机

    话对我触动很大:量子计算机不仅能解决身边的问题,还能解决社会层面的重大课题。 看来真是“天下武功,唯快不破”,只要处理速度足够快,海量数据处理就像计算1+1样简单,可以想象
    发表于 03-05 17:37

    计算机为什么利用反码来实现减法?

    计算机为什么利用反码来实现减法? 计算机在实现减法运算时利用反码的原因可以历史背景、计算机设计优势和运算规则等方面来分析。 1. 历史背景 在计算
    的头像 发表于 02-19 15:10 796次阅读

    微机原理和计算机组成原理的区别

    微机原理和计算机组成原理是计算机科学中两个重要的主题,它们虽然有定的关联,但也存在些区别。本文将详细阐述微机原理和计算机组成原理的区别,
    的头像 发表于 01-14 14:56 3210次阅读

    量子计算机的作用有哪些

    量子计算机种基于量子力学原理的新型计算机,它利用量子比特(qubit)进行信息处理,具有传统计算机无法比拟的计算能力和潜力。量子
    的头像 发表于 12-30 14:32 1844次阅读

    工业计算机与商用计算机的区别

    工业计算机与商用计算机的区别  工业计算机和商用计算机是两种应用于不同领域的计算机系统。虽然它们在技术方面存在
    的头像 发表于 12-27 10:50 603次阅读