美文网首页
03|布尔逻辑与逻辑门

03|布尔逻辑与逻辑门

作者: 井润 | 来源:发表于2019-11-14 23:41 被阅读0次

    其中在上篇Blog中讲到了对应的电子计算机,今天我要说的是 布尔逻辑与逻辑门

    涉及到的知识点有:

    • 什么是二进制,为什么要用二进制,布尔逻辑
    • 3个基本操作 Not,And,Or
    • 解释三个基础操作
    • XOR 异或
    01|抽象旅程的开始

    抽象的出现,让我们不必管多么底层的细节,而是将精力分配到构建更加复杂的系统中去!

    上篇文章讲到的电子计算机的机电设备时使用的 十进制进行计数的,其中使用对应的齿轮数进行计数

    但是后面随着技术的快速发展,慢慢开始全面推广 晶体管计算机,本文就不过多叙述,幸运的是, 开关也表示对应的信

    息和状态 那么对应的开关的信息和状态使用何种形式表示的呢?

    二进制 是二进制,而不是之前前文中介绍到的十进制, 而二进制分为两种,分别为 true和false

    • true表示为真
    • false表示为假

    为了更好地理解,我们使用电路开关作为例子:

    • 电路闭合,电流通过 此时为true
    • 电路断开,无电流通过 此时为false

    此时的你可能会好奇地问,为什么会只有二进制有没有别的呢? 为什么非要以二进制作为常用标准

    其实,当初我在学习计算机科学的时候,也是比较好奇的,知道后面慢慢学的时候才慢慢明白! **在当时的时候,不仅仅是有二进制的,还存在对应的三进制和五进制 ** 对应的也就表示计算机有三种或者五种状态!

    随即而来的问题就是: 状态多起来的话,信息就难以区分,不同设备之间通信信号会混乱在一起! 因此也就慢慢的使用二进制这种比较简单方便的状态进行表示!

    02|布尔代数

    而后面因为二进制衍生出了一种代数能够解决所有法则与运算,可能对于你来讲也许不陌生! 布尔代数!

    是的 之所以叫做 布尔代数 是因为其发明者是来自于,19世纪自学成才的英国数学家 乔治布尔!

    通过数学式子拓展了亚里士多德的逻辑方法,在乔治布尔1847年的书 《逻辑的数学分析》中也讲到过 他用逻辑方程,系统而正式的证明真理!

    其中在我们高中,常规代数中(高中所学)变量的值为数字,市场进行常规的运算(加减乘除!)

    与之不同的是,布尔代数,对应的值却不是数字,而是 true,false 进行对应的逻辑运算!

    不仅如此,在对应的逻辑运算中有三种基本的操作:

    • not
    • and
    • or

    对应的not从表面意思也能够看出来,取到相反的值! true的相反值为false,false的相反值为true!

    那么我们可以简单的从对应的开关进行联想,输入的是true,那么输出的就是false,可以想象成为刚开始就是电路联通的状态,后面因为not(相反的操作),结果也就成为了断开的结果!

    Input Operation Output
    True Not False
    Not True

    那么对应的and,就是和的意思,或者表示与,对应的有两个输入值,一个输出,对应的两个输入值或者条件为真的时候,就表示为真,否则为假! 我只有会唱歌会跳舞才是女孩子心中的No.1 此时的问题就来了,我只会唱歌或者只会跳舞都不能够成为女孩子心中的No.1

    Input1 Input2 Operation Output
    True True And True
    True False And False
    False True And False
    False False And False

    剩下的就是基本的操作就是or,表示或,只需要一个为真就行了,我会唱歌或者会跳舞也可以是女孩子心中的No.1

    那么我满足其中的一个条件即可成立!

    Input1 Input2 Operation Output
    True True Or True
    True False Or True
    False True Or True
    False Or False

    最后一个不那么常见的就是,XOR异或 表示条件中有一个为True则为True

    Input1 Input2 Operation Output
    True True XOR False
    True False XOR True
    False True XOR True
    False False XOR False

    这些逻辑运算不仅仅是在物理还是数学中常常遇见,在我们所谓的编程中也常常见到, 工程师在设计处理器的时候,很少在晶体管层面上思考! 主要使用逻辑组件,不用考虑逻辑物理层面上的实现,电信号第一次表示数据,真与假慢慢开始有一点 计算的意思了!

    欢迎在评论区与我交流!

    相关文章

      网友评论

          本文标题:03|布尔逻辑与逻辑门

          本文链接:https://www.haomeiwen.com/subject/jszdictx.html