以数学家**乔治·布尔(George Boole)**命名的布尔代数,是一切数字电路的基石。它处理的变量只有两种状态:真(True,1)或假(False,0)。当我们考虑两个输入变量 A 和 B 时,输入只有四种可能的组合:(0, 0)、(0, 1)、(1, 0) 和 (1, 1)。
由于这四种输入组合中的每一种都可以产生 0 或 1 作为输出,因此可能的唯一布尔函数总数为 。
本文将探讨这 16 种基本逻辑运算,并按照它们的复杂程度以及在数字设计中的重要性进行分类。
为了理解这些函数,我们首先必须定义输入的所有可能性。
| A | B |
|---|---|
| 0 | 0 |
| 0 | 1 |
| 1 | 0 |
| 1 | 1 |
根据输出模式,这 16 种函数可以划分为若干类别——从最简单的常量函数到最复杂的异或门。我们用 来表示函数的输出。
这类函数完全忽略输入,始终产生相同的输出。
| 函数名称 | 表达式 | A=0, B=0 | A=0, B=1 | A=1, B=0 | A=1, B=1 | 说明 |
|---|---|---|---|---|---|---|
| 零(Zero / FALSE) | 0 | 0 | 0 | 0 | 始终输出 0。 | |
| 一(One / TRUE) | 1 | 1 | 1 | 1 | 始终输出 1。 |
这类函数仅取决于其中一个输入(直接输出或取反输出)。
| 函数名称 | 表达式 | A=0, B=0 | A=0, B=1 | A=1, B=0 | A=1, B=1 | 说明 |
|---|---|---|---|---|---|---|
| 传递 A(Transfer A) | 0 | 0 | 1 | 1 | 输出直接等于 A。 | |
| 传递 B(Transfer B) | 0 | 1 | 0 | 1 | 输出直接等于 B。 | |
| 非 A(NOT A) | 1 | 1 | 0 | 0 | 输出为 A 的反相。 | |
| 非 B(NOT B) | 1 | 0 | 1 | 0 | 输出为 B 的反相。 |
这些是在数字系统中最广泛使用的主要逻辑门。
| 函数名称 | 表达式 | A=0, B=0 | A=0, B=1 | A=1, B=0 | A=1, B=1 | 常用逻辑门说明 |
|---|---|---|---|---|---|---|
| 与(AND) | 0 | 0 | 0 | 1 | 仅当 A 与 B 同时为 1 时输出 1。 | |
| 或(OR) | 0 | 1 | 1 | 1 | 当 A 或 B(或两者同时)为 1 时输出 1。 | |
| 与非(NAND) | 1 | 1 | 1 | 0 | A 和 B 的与非运算。(通用逻辑门) | |
| 或非(NOR) | 1 | 0 | 0 | 0 | A 和 B 的或非运算。(通用逻辑门) |
这类函数对于算术电路(如加法器)以及输入比较至关重要。
| 函数名称 | 表达式 | A=0, B=0 | A=0, B=1 | A=1, B=0 | A=1, B=1 | 说明 |
|---|---|---|---|---|---|---|
| 异或(XOR,Exclusive-OR) | 0 | 1 | 1 | 0 | 当 A 和 B 不同时输出 1。 | |
| 同或(XNOR,等价运算) | 1 | 0 | 0 | 1 | 当 A 和 B 相同时输出 1。 |
这类函数在普通数字逻辑中较少见,但在高级逻辑设计和某些形式化系统中发挥着重要作用。
| 函数名称 | 表达式 | A=0, B=0 | A=0, B=1 | A=1, B=0 | A=1, B=1 | 说明 |
|---|---|---|---|---|---|---|
| A 蕴含 B(实质蕴含) | 1 | 1 | 0 | 1 | 仅当 A 为 1 且 B 为 0 时为假(0)。 | |
| B 蕴含 A | 1 | 0 | 1 | 1 | 仅当 B 为 1 且 A 为 0 时为假(0)。 | |
| A 不蕴含 B | 0 | 0 | 1 | 0 | 仅当 A 为 1 且 B 为 0 时为真(1)。 | |
| B 不蕴含 A | 0 | 1 | 0 | 0 | 仅当 A 为 0 且 B 为 1 时为真(1)。 |
这 16 种函数最令人着迷的地方在于,其中有两个逻辑门可以各自独立地构建出所有其他函数:它们就是与非门(NAND)和或非门(NOR)。
正因为这一特性,NAND 和 NOR 门被称为通用逻辑门(Universal Gates)。一台计算机完全可以仅用同一种类型的逻辑门搭建而成,从而大幅简化集成电路的制造工艺。
下表根据四种输入组合的输出结果,对全部 16 种函数进行了汇总。
| F# | (0,0) | (0,1) | (1,0) | (1,1) | 函数名称 | 表达式 | 常用逻辑门 |
|---|---|---|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 零(Zero) | (常量) | ||
| 1 | 0 | 0 | 0 | 或非(NOR) | NOR | ||
| 0 | 1 | 0 | 0 | B 不蕴含 A | |||
| 0 | 0 | 1 | 1 | 传递 A(Transfer A) | |||
| 0 | 0 | 1 | 0 | A 不蕴含 B | |||
| 0 | 1 | 0 | 1 | 传递 B(Transfer B) | |||
| 0 | 1 | 1 | 0 | 异或(XOR) | XOR | ||
| 1 | 1 | 1 | 0 | 与非(NAND) | NAND | ||
| 0 | 0 | 0 | 1 | 与(AND) | AND | ||
| 1 | 0 | 0 | 1 | 同或(XNOR) | XNOR | ||
| 1 | 0 | 1 | 0 | 非 B(NOT B) | NOT | ||
| 1 | 0 | 1 | 1 | B 蕴含 A | |||
| 1 | 1 | 0 | 0 | 非 A(NOT A) | NOT | ||
| 1 | 1 | 0 | 1 | A 蕴含 B | |||
| 0 | 1 | 1 | 1 | 或(OR) | OR | ||
| 1 | 1 | 1 | 1 | 一(One) | (常量) |
这 16 种由两个简单二进制输入衍生出的逻辑函数,构成了所有计算过程的完整词汇表,展示了如何从最简单的基础构建出令人惊叹的复杂系统。
获取《卡乌埃的生活方式》精选离线版——一份全面优化 🍏 健康、💰 财富、❤️ 爱 与 🧘 意义 的实践指南。
当我发布关于美好生活的新随笔、读书笔记和实践指南时接收通知。绝无垃圾邮件——可随时退订。
有任何问题、见解或建议吗?欢迎在下方分享您的想法。评论功能由 GitHub Discussions 驱动(无广告、无垃圾信息)——点击下方的使用 GitHub 登录即可发表评论或互动(注册免费 GitHub 账号不到一分钟即可完成)。
最后更新于 2025年11月27日.
免责声明:本站所有内容仅供信息参考与教育用途,不构成任何医疗、心理、财务、投资、税务或法律建议。此处呈现的观点、整理与见解仅代表我个人,不代表我雇主的立场。书籍、演讲及文章摘要均为独立的教育性评论,其知识产权归原作者所有。本站可能使用 AI 工具辅助编辑、排版与归纳;尽管我们竭力确保准确无误,但仍可能存在疏漏。隐私政策:本站使用第三方服务提供可选的邮件通讯订阅(follow.it)、评论(giscus / GitHub Discussions)以及嵌入媒体(YouTube),这些服务可能会依据各自的隐私政策处理访客的 IP 地址和 Cookie。