入门 #math#hardware
布尔代数
布尔代数是数字电路的理论基础,使用逻辑运算处理真(1)和假(0)值
什么是布尔代数?
你妈妈可能说过这样的话:
“做完作业 而且 整理好房间,才能玩游戏。” “这次期中考试,数学 或者 英语考到 95 分以上,就给你买那个耳机。”
这两个句子里的 “而且” 和 “或者”,其实就是最基本的逻辑运算。布尔代数(Boolean Algebra)就是把这些日常逻辑变成了数学公式——只不过它只处理两个值:真(1) 和 假(0)。
三种基本运算
与运算(AND)——“而且”
两个条件同时满足时,结果才为真。就像刚才说的:做完作业 而且 整理好房间 → 才能玩游戏。两件事缺一不可。
| A | B | A AND B |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
用一个更形象的例子:家里两个开关串联(像老式手电筒),必须两个开关都打开,灯才亮。这就是 AND。
或运算(OR)——“或者”
只要有一个条件满足,结果就为真。就像刚才说的:数学 或者 英语考到 95 分 → 买耳机。有一科达标就行。
| A | B | A OR B |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 1 |
换成开关:两个开关并联(任何一个闭合,灯就亮)。这就是 OR。
非运算(NOT)——“不是”
取反——把 1 变 0,0 变 1。就是日常说”不”的意思。
| A | NOT A |
|---|---|
| 0 | 1 |
| 1 | 0 |
有没有发现,这三种运算和中学物理学的串联/并联电路实际上是一回事?只是这里处理的是”逻辑”而不是”电流”。
布尔代数定律
这些定律跟普通代数很像,但又不完全一样:
- 交换律:A AND B = B AND A(就像”做完作业且整理房间”和”整理房间且做完作业”是一回事)
- 结合律:(A AND B) AND C = A AND (B AND C)(多个条件分组不影响结果)
- 分配律:A AND (B OR C) = (A AND B) OR (A AND C)(类似乘法分配律,但注意 AND 和 OR 的角色)
德摩根定律——最容易记反的一条
NOT (A AND B) = (NOT A) OR (NOT B)
用一句话理解:“不是(两个都满足)“等于”至少有一个不满足”。
比如:“我不能既吃火锅又吃烧烤” = “我不吃火锅 或者 我不吃烧烤”。是不是一下就好懂了?
反之也成立: NOT (A OR B) = (NOT A) AND (NOT B)
小结
布尔代数把”做作业才能玩游戏”这种日常逻辑变成了 0 和 1 的数学运算。三种基本运算——与、或、非——就是计算机思考问题的基本方式。在下一节中,我们将把这些数学公式变成实实在在的物理电路——逻辑门。