计算机最基础的核心理论——布尔逻辑
Posted 超人汪小建(seaboat)
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了计算机最基础的核心理论——布尔逻辑相关的知识,希望对你有一定的参考价值。
布尔逻辑是计算机最基础的核心理论,为什么这么说呢?因为不管是我们使用的手机电脑或是其它的智能设备都是基于存储芯片和处理芯片,虽然这些芯片的外观和构成都不同,但它们的基本模块却是一样的,都是基于逻辑门构建而成。逻辑门的理论基础就是布尔逻辑,我们可以使用不同的介质材料和制造工艺来实现逻辑门,这不会影响它的逻辑行为。
布尔逻辑中的布尔其实是一个人名,编程人员很熟悉的布尔类型就是这个布尔。布尔全名为乔治布尔,他是英国的一个数学家,他最大成就就是通过二进制将逻辑与数学进行了融合,从而使逻辑能进行计算操作。
算术可以执行加法和乘法,而基本逻辑主要是“或”和“与”,能否也用加法和乘法来表达计算呢?逻辑或表示两个命题只要其中一个为真命题就是真,可使用加法和乘法来表示。逻辑与表示两个命题都要为真命题才是真,对应乘法运算。上述运算只有在0和1的情况下才能成立,所以只有通过二进制运算才能将算术与逻辑串连起来。
下图是逻辑“或”的机械组成,主要包括三个滑竿和一个弹簧,当滑竿不动时表示信号为0,而当滑竿向右移时表示信号为1。左边两个滑竿分别表示输入X和输入Y,当其中一个滑竿向右移动后将通过挡板压缩弹簧并推动右边的滑竿向右移动,从而使得输出Z的信号为1。当输入的滑竿往左移回时,输出Z的滑竿在弹簧的作用下重新弹回原处。我们可以看到,不管是输入X还是输入Y的右移都将使输出Z右移,从而实现了逻辑“或”功能。
为了说明逻辑“与”功能,我们要先来了解逻辑“非”的机械组成。它能将输入信号反置,比如输入信号为1则输出信号为0,反之亦然。当输入X的滑竿向右移时将导致输出Z的滑竿向左拉伸,而当输入X的滑竿向左移时输出Z的滑竿在弹簧的拉力下向右拉回。
有了逻辑“或”和逻辑“非”组件后我们看下如何将它们组装成逻辑“与”,先将两个“非”组件的输出端对接到“或”组件上作为它的输入,然后再将“或”组件的输出端对接到另外一个“非”组件上作为其输入,最终的组成图如下所示。当输入X和输入Y都为1时,两个“非”组件的输出滑竿都将拉伸弹簧并向左移,此时“或”组件的挡板在弹簧的弹力下也朝左边移动,最后的“非”组件在弹簧的拉力下向右移动,最终的输出Z为1。注意到假如两个输入只有一个为1,那么将无法引起挡板向左移,也就是说输出Z都为0。
以上是关于计算机最基础的核心理论——布尔逻辑的主要内容,如果未能解决你的问题,请参考以下文章