计算机中的数学 · 小白练习本 第 2 课 / 共 7 课
第 2 课 · 约 8 分钟

布尔逻辑:
计算机的判断力

计算机看起来无所不能,但它的「思考」其实简单到惊人:任何问题都只回答「真」或「假」,再用三种基本判断——与、或、非——组合起来。这一课讲的就是这套「逻辑积木」。

需要的基础:第 1 课的 0 和 1 · 会读表格

1

一切判断只有真和假

1847 年,数学家乔治·布尔发现:逻辑推理可以变成代数运算。把「真」写成 1,「假」写成 0,那么「并且」「或者」「不是」这些日常词语,都能变成有明确答案的算式。这套体系就叫布尔代数

「周末而且天气好,我就去爬山」——这句话里去不去,取决于两个条件各自真假。布尔代数就是给这种日常推理建立的「算术」:条件都换成 0 和 1,结论就能算出来。

100 年后,工程师发现开关电路天然就是 0 和 1——布尔代数和电子电路一拍即合,成了整个数字世界的地基。

2

三种基本运算:与、或、非

把两个输入 a、b(各为 0 或 1)做运算,结果记进表格(真值表)。三张表建议各读一遍,非常短:

abAND(与)OR(或)NOT a(非)
00001
01011
10010
1111

AND(与)像串联电路:两个开关闭合,灯才亮——苛刻,全票通过。
OR(或)像并联电路:任意一个闭合灯就亮——宽容,一票也行。
NOT(非)是个「唱反调」的:进来 1 出去 0,进来 0 出去 1。

编程里的写法基本一致:与 = &&,或 = ||,非 = !。比如「周末且天气好」写成 isWeekend && isSunny

3

逻辑门:把数学变成芯片

用晶体管把三种运算做成实体电路,就叫逻辑门(AND 门、OR 门、NOT 门)。奇迹从这里开始:逻辑门可以拼出一切

  1. 拼出加法半加器 = 1 个 XOR 门(异或,算「本位」)+ 1 个 AND 门(算「进位」)。计算机的加法,就是第 1 课的二进制 + 这里的逻辑门。
  2. 拼出记忆几个门首尾相连互相「锁住」状态,就成了能存 1 个比特的电路(触发器)。亿万个小记忆单元 = 内存条。
  3. 拼出判断把「如果条件为真就走这条线」做成电路(多路选择器),就是 CPU 里指令跳转的原型。
  4. 无限复制现代 CPU 芯片里有上百亿个晶体管,本质上是亿万个小逻辑门在同时做「与或非」。

乐高只有一种基本颗粒,却能拼出城堡和飞船。逻辑门就是计算机的乐高:三种门,拼出加法、记忆、判断,再拼出整个数字世界。

4

化简逻辑:聪明人的省材料艺术

布尔代数还能化简。比如 (A AND B) OR (A AND 非B) 看着复杂,其实永远等于 A——因为不管 B 是 0 还是 1,两项总有一项成立且仅依赖 A。工程师用这种化简让芯片用更少的门实现同样的功能:更快、更省电、更便宜。

这就是为什么说布尔逻辑是「数学直接变成产业」的经典案例:一门 1847 年的抽象代数,一百年后变成了硅谷。

?

常见疑问

XOR(异或)是什么?

「不同才为真」:两个输入不一样输出 1,一样输出 0。它是二进制加法的关键(1+1=0 进 1,正好是 XOR+进位),也是很多加密算法的积木。

「与或非」能表达所有逻辑吗?

能。数学上证明了 AND、OR、NOT 组合可以构造任何逻辑函数(完备性)。甚至只需要一种「与非门」(NAND)就能拼出其他所有门——所以早期芯片厂爱大量生产同一种门。

学编程需要精通真值表吗?

不需要背,但需要「手感」:写 if 条件时能看出「这个嵌套条件其实等价于一个 AND」。想练习的话,把生活里的话翻译成 && || ! 就很有帮助。

下一课