读《编码:隐匿在计算机软硬件背后的语言》笔记——第十章:逻辑与开关

摘要:这一章通过亚里士多德的三段论(苏格拉底之死)引出数学家对逻辑数学化的努力,其中布尔取得突破性成果——集合——对,就是我们初中学的集合。为了说明集合的规则,作者举了一个粒子:一个人去宠物店买猫,提出了乱七八糟的要求,店员根据要求确定合要求的猫。通过这个例子,作者继续拓展,带我们了解了逻辑中的OR、AND、NOT。作者继续拓展,将买猫的例子变成一个带着串联和并联的电路,让我们知道,电脑是如何将布尔运算运行的。

关键词:三段论, 逻辑, 集合, 电路

正文

1. 三段论

亚里士多德的逻辑基是三段论,其中最著名的是苏格拉底之死:

所有的人都是要死的;

苏格拉底是人;

所以,苏格拉底是要死的。


2. 集合

数学家们想将其中的逻辑数学化,为之奋斗。其中布尔成就很大,他提出了集合(set)。集合我们初中学过。布尔提出了一些新概念:并集(+),交集(×),全集(1),空集(0)。

作者为了说明这些概念,举了个例子:

有一天,你走进宠物店对店员说:“我想要一只阄过的公猫,白的或黄褐色的均可;或者要一只不生育的母猫,除了白色,其他任何颜色均可;或者只要是只黑猫,我也要。”店员对你说:“看来您想要的猫是下面的式子表示的集合中的一只:
(M×N×(W+T))+(F×N×(1-W))+B 
对吗?”

你回答道:“是的,完全正确!”

M是公猫的集合,F是母猫的集合,N是没有生殖能力的猫的集合,W是白猫的集合,T是黄褐色猫的集合,B是黑猫的集合。

店员如何检验TA拿出来的猫是否符合上面的式子?假如店员拿来一只不生育的白色的小母猫,如果这个猫在某个集合里,则是1;否则是0 。则上式可以变为:

(M×N×(W + T))+(F×N×(1-W))+ B 

==(0×1×(1 + 0))+(1×1×(1 - 1))+ 0

== 0

这就表示了这只猫不符合要求。


3.逻辑符号

逻辑符号我们应该也是学过,AND, OR, NOT

我们将上面例子中

(M×N×(W+T))+(F×N×(1-W))+B

的 ‘ + ’, ‘ × ’, ‘ 1 - ’分别用 OR, AND, NOT 来代替

(M AND N AND (W OR T))OR(F AND N AND (NOT W))OR B

这样子就更接近口头描述,更容易理解了。


4. 电路

串联表示AND

并联表示OR

则上面的式子可以变为

用电路来表示逻辑关系

如果符合要求就闭合开关,如果最后,灯亮了,那么就符合要求。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • [TOC] 1.至亲密友 1.1 编码是什么? 一种用来在机器和人之间传递信息的方式 编码就是交流 1.2 生活中...
    fatfatEddy阅读 2,246评论 0 3
  • 背景 一年多以前我在知乎上答了有关LeetCode的问题, 分享了一些自己做题目的经验。 张土汪:刷leetcod...
    土汪阅读 12,779评论 0 33
  • 我大学时候学的是设计,但是其实上学时并没有太多的绘画基础。13年刚毕业之后才报了绘画班,周末去学画画,然后...
    bluemoonforever阅读 931评论 3 6
  • 今天按计划坐7点06分的动车回南宁。下午到南宁时估计是昨晚睡眠不足竟然晕车了,所以打破了原来的安排,睡到了...
    晨曦晓林阅读 189评论 0 0
  • 昨晚听了希望热线林老师分享的课程,感觉很有教义,不妨分享一下我的感受。 1.谈恋爱是满足自我 谈恋爱时,双方相互吸...
    心如莲花_fea1阅读 409评论 2 8