in

完整指南:布尔逻辑

关键点:
  • 布尔逻辑严格关注通常表示“真”或“假”的二进制变量,通常以1和0的形式出现。
  • 标准代数使用加法、减法、乘法、除法等运算符来操作数字,而布尔代数使用否定、合取和析取等逻辑函数。
  • 最简单的门被称为not门或反相器。它只是将输入翻转以产生相反的输出。

什么是布尔逻辑?- 完整解释

布尔逻辑是代数的一个子部分,描述了一组简单的规则和门来比较和操作逻辑语句。布尔逻辑与其他逻辑系统的区别在于,它严格关注二进制变量,通常以1和0表示真和假。

普通代数涵盖数字运算,而布尔代数处理逻辑运算。普通代数使用加法、减法、乘法、除法和其他数学函数来操作数字。布尔代数使用否定、合取和析取等逻辑函数来操作。两个系统使用相同的关系运算符,包括等于(=)、大于(>)和小于(<)的符号。

普通代数和布尔逻辑遵循许多相同的基本规则,包括:

  • 可交换定律,允许您在加法和乘法中交换变量的位置
  • 结合定律,允许您在加法和乘法中更改操作顺序
  • 分配定律,允许您将乘法操作分布到加法操作上

这些以及其他一些用于逻辑操作的简单规则和门使我们能够将大量的思想和语句直接映射到数字位和字节上。布尔逻辑是大多数计算机编程语言的基础。在金融领域,投资者使用它来评估选项和风险。它还提供了一种在大型数据库中精确搜索信息的简便方法。

布尔逻辑:精确定义

布尔逻辑是一种用于分析任何二进制语句的真值以及二进制语句集之间关系的系统,它使用代数规则结合逻辑门来执行逻辑操作。

布尔逻辑如何工作?

布尔逻辑从典型的数学函数开始,并添加了一些自己的函数。布尔逻辑的主要思想围绕着三个简单的逻辑门以及几个更高级的门。您可以将这些门与标准的数学关系运算符和基本的代数规则结合起来,构建分支的思想树,并将其实施到任何二进制数字系统上。

最简单的三个逻辑门包括:

  • not(非门)
  • and(与门)
  • or(或门)

not(非门)

最简单的门被称为not门或反相器。它只是将输入翻转以产生相反的输出。在基于二进制变量的数字系统中,将1输入到not门将输出0,反之亦然。

我们将这个逻辑函数称为not门,因为输入状态与输出状态不同。为了表示这个反转操作,布尔逻辑的大多数定义使用一个上横线,即给定输入符号(¯)上方的一个简单的横线。例如,如果我们用x表示开关闭合,那么“not x”,或者上方有横线的x,表示开关打开。

在布尔逻辑中,not门只有一个输入和一个输出。两个反向连接的not门产生一个双重反转,将使变量恢复到其原始值。

and

and门只有当连接到它的所有语句或变量同时存在时才会产生输出动作。and门的输出只有在and门连接的所有变量都为真时才为真。如果其中一个为假,则输出为假。

and门类似于加法,因为它遵循交换律的简单规则,允许连接到它的任何变量改变位置。其中一个最简单的例子是“x and y = y and x”。变量的顺序不会影响最终结果,因此被认为是不重要的。

我们通常用点或句号符号(.)表示and门。具有x和y两个输入的and门可转换为布尔表达式“x.y”,许多编程语言将其简化为“xy”。

or

布尔or门只有在连接的变量中任意一个存在时才会产生输出。这种门的输出动作如果其任何输入为真则为真。在电子世界中,or门被称为并联电路。

就像and门一样,or门具有交换性质,允许其任何输入变量改变顺序而不影响输出。or门的全名实际上是“包括or”,与更复杂的布尔逻辑门“排除or”(xor)相对应。xor门执行相反的功能,排除其所有输入,并且只有在没有输入时才产生输出。

令人困惑的是,我们用加号(+)表示or门。具有x和y两个输入的or门可以用布尔表达式“x+y”表示。

一个带有传感器、开关和逻辑元件电路的训练支架,用于学生培训,以阐述布尔逻辑。布尔逻辑是代数的一个子集,描述了一组简单的规则和门,用于比较和操作逻辑语句。

©istock.com/klmax

更高级的逻辑门

如果我们进一步深入我们的布尔逻辑系统,我们会得到更高级的逻辑门。这些基本上只是三个最简单门的组合。以下是其中几个最重要的。

nand

nand门结合了两个简单的逻辑门,not门和and门,形成一个not and函数。nand是and的补集,正如你所猜到的,执行与and门规则完全相反的反转操作。只有当连接到它的所有输入都为真时,nand门的输出才为假。如果其中一个或多个输入为假,则输出为真。

我们用来表示nand的符号有时被称为sheffer划线。它看起来像一个指向上方的箭头(↑),但有时被简化为垂直线(|)。涉及nand门连接x和y变量的布尔表达式的示例包括“x↑y”和“x|y”。

nor

nor门连接了两个简单的逻辑门——not门和or门,以创建一个not or函数。它的作用与简单的or门完全相同,只是输出被反转。只有当其变量都不存在时,nor门才会给出输出。只有在所有输入变量都为假时,输出变量才具有真值。

我们可以使用两个符号来表示nor门。第一个符号是将not门和or门的符号组合起来。使用变量x和y,它看起来像“x+y”上面有一个上划线。第二个符号是一个更简化的符号,被称为皮尔斯箭头,它看起来像一个向下的箭头(↓)。当连接我们两个最喜欢的变量时,它看起来像“x↓y”。

如何创建布尔表达式?

布尔表达式是像java、c和python这样的编程语言如何实现布尔逻辑的方式。根据定义,布尔表达式必须是一个简单的逻辑语句,可以表示为真或假。

只要在所有表达式的所有部分中输入相同的数据类型,您就可以使用这些表达式来比较任何类型的数据。它们可以作为一种逻辑计算器来测试语句和其他数据输入,并检查它们是否等于、小于或大于其他语句或数据。

简单的布尔表达式至少需要三个部分:您要比较的第一项、您要执行的门或比较运算符,以及进行比较的第二项。您还可以通过使用not、or、and、nand、nor或其他逻辑门将任何简单表达式与任何其他表达式连接起来,从而创建更复杂的布尔表达式。

确保您连接的任何表达式都是一个完整的布尔表达式。这可能意味着您必须在多个位置指定相同的变量。

布尔逻辑的起源是什么?

george boole的半身像在科克大学学院。boole是ucc的数学教授。他的布尔代数成为现代计算机科学的基础。

布尔逻辑的起源可以追溯到1854年一本由数学家和哲学家george boole(乔治·布尔)出版的书籍。布尔是一个年轻的英国人,来自工人阶级的家庭。他的数学知识大部分是自学的。在34岁时,他成为爱尔兰第一所世俗学院皇后学院的数学教授。

布尔在他的第一本书《逻辑的数学分析》中引入了他的逻辑概念,并在后来的一本著作《思维定律的研究》中进一步探讨了这些概念。这些书是最早严肃探索逻辑思想及其与数学关系的著作。在这些书中,他提出,逻辑不是一种哲学,而是一门可以像计算器解决数学问题一样准确解决逻辑问题的数学学科。

他注意到代数符号和规则与我们在推理时使用的三段论和逻辑形式之间存在许多深层次的相似之处。他开始了一次雄心勃勃的旅程,试图设计一种基于代数的逻辑系统,以模拟我们思考的方式。布尔花了多年时间发展他关于如何将人类大脑自然产生的逻辑论证编码成数学语言的想法。布尔逻辑就是他提出的语言代数。

乔治·布尔是爱尔兰科克女皇学院的第一位数学教授。

1864年,布尔去世,年仅49岁。他的工作长时间没有太多实际应用,直到70年后,一位名叫克劳德·香农的美国电气工程师和数学家为它注入了生命。香农认识到布尔的符号逻辑可以在电机继电器电路中使用,形成实际问题解决机制的基础,或者如今我们所说的计算机。

事后看来,许多历史学家将乔治·布尔视为计算机科学的奠基人之一。他对现代数字电路和编程语言的概念结构的贡献使他当之无愧地成为信息时代最重要的创始人之一。

布尔逻辑的应用有哪些?

在今天所有的数字计算机的基础上,都是基于二进制电开关用于处理逻辑的基本思想。起初只是乔治·布尔的一个想法,如今却成为了所有数字电路设计的具体基础和计算机时代的概念基础。

早期的机械计算器。这是布尔逻辑的最早应用之一。

©uwe aranas/shutterstock.com

从计算器到中央处理器

如果我们使用不同的电压水平来表示二进制位,我们可以将非常基础的布尔门转变为制作简单的机械计算器所需的组件,包括计数器、加法器和其他数学工具。从那里开始,只需经过一小步,我们就可以设计出使用布尔逻辑进行减法、乘法、除法等运算的电路。由于不久前人类是唯一能进行概念数学的机器,这本身就是一件大事。

一旦我们使用这些电路及其布尔概念制作了口袋计算器,全功能的中央处理器就不远了。

随机存储器

使用布尔逻辑门可以创建的另一个有用的东西是记忆的概念。记忆的概念依赖于反馈。

当门的输出馈送到输入端时,你就得到了一个记忆。只需正确组织布尔逻辑门,就可以使其记住输入值。这个令人尴尬地简单的概念就是给我们的计算机提供了随机存储器。

布尔逻辑在现实世界的例子

在你的大脑中

你的大脑每天都在使用布尔逻辑。我们将大脑中的布尔概念称为“条件语句”。依赖于某些条件的分支决策树的概念是我们清晰思考的重要工具。

以下是你可能在头脑中遇到的布尔逻辑的几个例子:

  • 如果我在一个尘土飞扬的房间打喷嚏,我没事。如果我打喷嚏或咳嗽并且发烧,去看医生。
  • 如果我口渴,喝点东西。如果我又口渴又饿,点餐喝饭。如果我既不口渴也不饿,去睡觉。

搜索与研究

在研究中可以使用布尔运算符。它们可以帮助您在浏览数据库或图书馆目录时缩小或扩大搜索范围。布尔逻辑还可以帮助您更好地搜索互联网。

布尔运算符and可以让您的搜索聚焦于查找更具体的结果。and会缩小搜索范围。

布尔运算符or允许您包含相关概念。您可以使用它告诉您的搜索引擎查找各种同义词之一。or会扩大搜索范围。

布尔运算符not允许您排除无关的结果。例如,如果您正在寻找有关美国税收的信息,但您一直得到拉丁美洲的结果,您可以使用布尔搜索表达式“taxes and america not latin”来锁定正确的结果。如果您使用google,not由减号表示。

Written by 小竞 (编辑)

他们称呼我为小竞, 做作为河小马的助理有5年时间了,作为jingzhengli.com的编辑,我关注每天的科技新闻,帮你归纳一些现有科技以及AI产品来提升你的生产力,拥抱AI,让科技和AI为我们服务!