第 152 篇

考研数电·零基础讲义 第04讲(下)|无关项、多输出函数与逻辑形式变换

约 19 分钟 5949 字 华南师范大学数字电子技术考研数电零基础讲义

考研数电·零基础讲义 · 第 04 讲(下)|无关项、多输出函数与逻辑形式变换 学完这一讲,你能用无关项把函数化得更简(完整做出 2026 回忆题第 5 题的化简部分),会在多个输出之间找"共用项"省门,并能把最简与或式改写成与非-与非、或非-或非、与或非形式。预计用时 2.5 小时。

本讲地图

  • 无关项:约束项和任意项是什么,∑d(⋯ )\sum d(\cdots)怎么读,卡诺图里的 × 怎么用。
  • 真题完整例题:2026 回忆题第 5 题前半部分Y=∑m(1,3,5,8,9,13)+∑d(7,10,11,14,15)Y=\sum m(1,3,5,8,9,13)+\sum d(7,10,11,14,15)的化简,结果Y=AB‾+DY=A\overline{B}+D⁠。
  • 多输出函数化简:几个输出一起考虑,找共用的乘积项,让整个电路的门最少。
  • 逻辑形式变换:与或 → 与非-与非、或非-或非、与或非,为"只用某一种门实现"做准备。
  • 华师怎么考:带无关项的卡诺图化简是高频基本功;化简结果往往紧接着要求"用某种器件实现"(如 2026 第 5 题后半用 74HC151 实现,见第 10 讲)。
  • 教材对应:阎石《数字电子技术基础》第六版 第 2 章 2.7、2.8、2.9 节。

前置知识

  • 最小项与∑m\sum m⁠、最大项(见第 03 讲)。
  • 卡诺图的画法、相邻性、圈 1 / 圈 0 规则(见第 04 讲中)。
  • 摩根定理(见第 02 讲下);与非门、或非门的符号与功能(见第 02 讲上)。
  • 8421BCD 码(见第 01 讲下)。

一、无关项:为什么有些格子"填 1 填 0 都行"

大白话

想象你在设计一个"一位十进制数"的显示电路,输入是 4 位 8421BCD 码ABCDABCD⁠。4 位二进制能表示 0000~1111 共 16 种组合,但 BCD 码只用 0000~1001(0~9)这 10 种,1010~1111 这 6 种组合根本不会出现。

既然它们不会出现,那电路在这 6 种输入下输出 1 还是 0,谁也不在乎。这就给了我们"自由裁量权":在化简时,这些格子想当 1 就当 1,想当 0 就当 0,怎么让式子更简就怎么来。这类最小项就叫无关项。

正式定义

无关项分两种:

  1. 约束项:由于实际条件的限制,输入变量的某些取值组合根本不会出现,这些组合对应的最小项叫约束项。例如 BCD 码里的 1010~1111;又如一个水箱有上、中、下三个水位检测点,"上面检测到有水、下面却没水"在物理上不可能出现。
  2. 任意项:这些输入组合可能出现,但出现时输出是 1 还是 0 都不影响电路功能(比如此时电路已被另外的保护措施切断)。

约束项和任意项统称为无关项(don't care)。"无关"的意思是:把它写进逻辑式也行,不写也行,对电路的实际功能没有影响。

记法

  • 约束条件:因为约束项对应的输入不会出现,它的值恒为 0,所以可以写成"约束项之和=0=0"。例如 BCD 码的约束条件可以写成∑m(10,11,12,13,14,15)=0\sum m(10,11,12,13,14,15)=0⁠,化简后就是AB+AC=0AB+AC=0⁠。
  • 带无关项的函数常写成:
Y=∑m(⋯ )+∑d(⋯ )Y=\sum m(\cdots)+\sum d(\cdots)

其中∑m\sum m里是必须为 1 的最小项,∑d\sum d里是无关项(⁠dd取自 don't care)。有的书也写成+d(⋯ )+d(\cdots)⁠,意思一样。没出现在两个括号里的编号,就是必须为 0 的。

  • 卡诺图里:无关项的格子填 ×(有的书写ϕ\phi或 d)。

⚠️ 易错点:∑d\sum d里的编号不是"一定为 1"。它是"待定",由化简需要决定。


二、无关项在卡诺图里怎么用

原则

  1. 把 × 当成 1 还是当成 0,以"圈更大、圈更少"为准。
  2. 只有当 × 能帮助某个 1 所在的圈变大时,才把它圈进去;不能为了圈 × 而单独画一个只有 × 的圈(那等于平白多出一个乘积项)。
  3. 不要求所有 × 都被用上。没圈进去的 × 就当作 0。
  4. 圈的其他规则不变:2k2^k格、矩形、能卷起来。

入门例题

例 1:化简Y(A,B,C)=∑m(0,1,4)+∑d(2,5)Y(A,B,C)=\sum m(0,1,4)+\sum d(2,5)⁠。

解:填卡诺图(1 必须为 1,× 为无关项):

AA \ BCBC 00 01 11 10
0 1(⁠m0m_0⁠) 1(⁠m1m_1⁠) 0 ×(⁠m2m_2⁠)
1 1(⁠m4m_4⁠) ×(⁠m5m_5⁠) 0 0
  • 不用无关项:m0m_0⁠、m1m_1圈成A‾ B‾\overline{A}\,\overline{B}⁠,m0m_0⁠、m4m_4圈成B‾ C‾\overline{B}\,\overline{C}⁠,得Y=A‾ B‾+B‾ C‾Y=\overline{A}\,\overline{B}+\overline{B}\,\overline{C}⁠,2 项。
  • 把m5m_5当 1:m0m_0⁠、m1m_1⁠、m4m_4⁠、m5m_5组成 2×2 的 4 格圈,BB始终为 0 → B‾\overline{B}⁠。m2m_2用不上,当 0。
Y=B‾Y=\overline{B}

一个 × 就让结果从 2 项变成 1 项,而且只剩一个变量,连门都不用(只要一个反相器)。

例 2:BCD 码判断"大于等于 5"

输入ABCDABCD为 8421BCD 码,当它表示的十进制数⩾5\geqslant 5时输出Y=1Y=1⁠。求YY的最简与或式。

解:

第 1 步:确定三类格子。

  • 必须为 1:5、6、7、8、9;
  • 必须为 0:0、1、2、3、4;
  • 无关项:10~15(BCD 码中不会出现)。

所以Y=∑m(5,6,7,8,9)+∑d(10,11,12,13,14,15)Y=\sum m(5,6,7,8,9)+\sum d(10,11,12,13,14,15)⁠。

第 2 步:填卡诺图。

ABAB \ CDCD 00 01 11 10
00 0 0 0 0
01 0 1 1 1
11 × × × ×
10 1 1 × ×

第 3 步:圈。

  • m8m_8⁠、m9m_9⁠:把下两行的 × 全当 1,下两行 8 格组成一个大圈,AA始终为 1 → AA⁠;
  • m5m_5⁠、m7m_7⁠:和下面的m13m_{13}⁠、m15m_{15}(×)组成 2×2 圈,B=1B=1⁠、D=1D=1 → BDBD⁠;
  • m6m_6⁠、m7m_7⁠:和下面的m14m_{14}⁠、m15m_{15}(×)组成 2×2 圈,B=1B=1⁠、C=1C=1 → BCBC⁠。
Y=A+BD+BCY=A+BD+BC

对比:如果不用无关项,结果是Y=A‾BD+A‾BC+AB‾ C‾Y=\overline{A}BD+\overline{A}BC+A\overline{B}\,\overline{C}⁠,3 项、9 个因子;用了无关项后 3 项、只有 5 个因子。

⚠️ 易错点:化简结果在无关项的输入下输出什么都可以,但在非无关项的输入下必须和题意完全一致。验算时只检查非无关项那些行。

例 2′:水箱水位控制(约束项的典型来源)

一个水箱里从下到上装了三个水位检测元件AA⁠、BB⁠、CC(⁠AA最低,CC最高)。水面高过某个检测元件,它就输出 1,否则输出 0。水箱由大泵和小泵供水,控制要求:

  • 水面高过CC(⁠ABC=111ABC=111⁠):两台泵都停;
  • 水面在BB⁠、CC之间(⁠ABC=110ABC=110⁠):只开小泵;
  • 水面在AA⁠、BB之间(⁠ABC=100ABC=100⁠):只开大泵;
  • 水面低于AA(⁠ABC=000ABC=000⁠):两台泵都开。

用YL=1Y_L=1表示开大泵、YS=1Y_S=1表示开小泵,求最简表达式。

解:

第 1 步:找出不可能出现的输入。 水是从下往上涨的,不可能"上面的检测点有水、下面的没水"。所以ABCABC只可能是 000、100、110、111 四种;001、010、011、101 这四种永远不会出现,它们就是约束项。约束条件可以写成

A‾ B‾C+A‾BC‾+A‾BC+AB‾C=0\overline{A}\,\overline{B}C+\overline{A}B\overline{C}+\overline{A}BC+A\overline{B}C=0

化简后就是A‾B+B‾C=0\overline{A}B+\overline{B}C=0⁠。

第 2 步:写出带无关项的函数。

YL=∑m(0,4)+∑d(1,2,3,5),YS=∑m(0,6)+∑d(1,2,3,5)Y_L=\sum m(0,4)+\sum d(1,2,3,5),\qquad Y_S=\sum m(0,6)+\sum d(1,2,3,5)

第 3 步:卡诺图化简。

  • YLY_L⁠:m0m_0⁠、m4m_4和 ×1、×5 组成 2×2 圈(⁠B=0B=0⁠)→ YL=B‾Y_L=\overline{B}⁠;
  • YSY_S⁠:m0m_0和 ×1、×3、×2 组成第一行 4 格圈(⁠A=0A=0⁠)→ A‾\overline{A}⁠;m6m_6和 ×2 组成 2 格圈(⁠B=1B=1⁠、C=0C=0⁠)→ BC‾B\overline{C}⁠。所以YS=A‾+BC‾Y_S=\overline{A}+B\overline{C}⁠。

第 4 步:回到实际情况检验。 在四种真实状态下:000 时YL=1Y_L=1⁠、YS=1Y_S=1⁠;100 时YL=1Y_L=1⁠、YS=0Y_S=0⁠;110 时YL=0Y_L=0⁠、YS=1Y_S=1⁠;111 时YL=0Y_L=0⁠、YS=0Y_S=0⁠。和控制要求完全一致。

如果不用约束项,YL=B‾ C‾Y_L=\overline{B}\,\overline{C}⁠,YS=A‾ B‾ C‾+ABC‾Y_S=\overline{A}\,\overline{B}\,\overline{C}+AB\overline{C}⁠,明显更复杂。这个例子说明:题目里的"不可能出现"四个字,就是在送你无关项。


三、真题完整例题:2026 回忆题第 5 题(化简部分)

2026 回忆题第 5 题:化简Y=∑m(1,3,5,8,9,13)+∑d(7,10,11,14,15)Y=\sum m(1,3,5,8,9,13)+\sum d(7,10,11,14,15)⁠,用一片 8 选 1 数据选择器 74HC151 实现。

这一讲先完成化简部分;用 74HC151 实现的部分在第 10 讲。

第 1 步:读题,分清三类格子

题目没写变量,按惯例四变量记为Y(A,B,C,D)Y(A,B,C,D)⁠,AA为最高位。

  • 必须为 1(⁠∑m\sum m⁠):1、3、5、8、9、13;
  • 无关项(⁠∑d\sum d⁠):7、10、11、14、15;
  • 必须为 0(其余):0、2、4、6、12。

数一数:6+5+5=166+5+5=16⁠,正好是全部 16 个最小项,没有漏。

第 2 步:填卡诺图

ABAB \ CDCD 00 01 11 10
00 0(⁠m0m_0⁠) 1(⁠m1m_1⁠) 1(⁠m3m_3⁠) 0(⁠m2m_2⁠)
01 0(⁠m4m_4⁠) 1(⁠m5m_5⁠) ×(⁠m7m_7⁠) 0(⁠m6m_6⁠)
11 0(⁠m12m_{12}⁠) 1(⁠m13m_{13}⁠) ×(⁠m15m_{15}⁠) ×(⁠m14m_{14}⁠)
10 1(⁠m8m_8⁠) 1(⁠m9m_9⁠) ×(⁠m11m_{11}⁠) ×(⁠m10m_{10}⁠)

第 3 步:画圈

2026 回忆题第5题卡诺图:利用无关项圈出 D 和 AB' AB CD 00 01 11 10 00 01 11 10 0 1 1 0 0 1 × 0 0 1 × × 1 1 × × 1 = 必须为 1;× = 无关项 0 = 必须为 0 ① 中间两列(D=1): m1 m3 m5 m13 m9 + ×7 ×15 ×11 8 格大圈 → D ② 最下一行(AB=10): m8 m9 + ×11 ×10 4 格圈 → AB' ×14 没被圈,当 0 处理 Y = AB' + D

图 1:2026 回忆题第 5 题的卡诺图。蓝圈利用 ×7、×15、×11 组成 8 格大圈得DD⁠,橙圈利用 ×11、×10 组成 4 格圈得AB‾A\overline{B}⁠,×14 不用,当 0(动画循环播放)

① 先看中间两列(⁠CD=01CD=01⁠、1111⁠,也就是D=1D=1的两列)。 这 8 格里:m1m_1⁠、m3m_3⁠、m5m_5⁠、m13m_{13}⁠、m9m_9是 1,m7m_7⁠、m15m_{15}⁠、m11m_{11}是 ×。把这三个 × 都当成 1,8 格就全是 1,组成一个 8 格大圈。

读圈:圈内AA变、BB变、CC变,只有DD始终为 1 → 这个圈是DD⁠。

一下子就把m1m_1⁠、m3m_3⁠、m5m_5⁠、m9m_9⁠、m13m_{13}五个 1 全包了。

② 还剩m8m_8没圈。 m8m_8在左下角(⁠AB=10AB=10⁠、CD=00CD=00⁠),它的邻居:

  • 右边m9m_9(1);
  • 上边m12m_{12}(0)——不能用;
  • 下边(卷起来)m0m_0(0)——不能用;
  • 左边(卷起来)m10m_{10}(×)。

能让m8m_8的圈最大的方法:把整个最下面一行m8m_8⁠、m9m_9⁠、m11m_{11}⁠、m10m_{10}圈起来(⁠m11m_{11}⁠、m10m_{10}两个 × 当 1),4 格圈。

读圈:A=1A=1⁠、B=0B=0始终不变,CC⁠、DD都在变 → AB‾A\overline{B}⁠。

能不能更大?如果想要 8 格(比如下两行),就得把m12m_{12}圈进来,而m12m_{12}必须为 0,不行。如果想圈m8m_8⁠、m9m_9⁠、m12m_{12}⁠、m13m_{13}(⁠AC‾A\overline{C}⁠),同样因为m12=0m_{12}=0不行。所以AB‾A\overline{B}就是包含m8m_8的最大圈。

③ 检查。 所有 1 都已圈到;两个圈都不多余(⁠DD圈独占m1m_1等,AB‾A\overline{B}圈独占m8m_8⁠)。m14m_{14}没被任何圈用到,就当作 0。

第 4 步:写结果

Y=AB‾+DY=A\overline{B}+D

第 5 步:验算(穷举真值表)

把 16 行全部列出来,看AB‾+DA\overline{B}+D在"必须为 1"和"必须为 0"的行上是否都对:

编号 ABCDABCD 题目要求 AB‾A\overline{B} DD AB‾+DA\overline{B}+D 是否符合
0 0000 0 0 0 0 ✓
1 0001 1 0 1 1 ✓
2 0010 0 0 0 0 ✓
3 0011 1 0 1 1 ✓
4 0100 0 0 0 0 ✓
5 0101 1 0 1 1 ✓
6 0110 0 0 0 0 ✓
7 0111 × 0 1 1 无关
8 1000 1 1 0 1 ✓
9 1001 1 1 1 1 ✓
10 1010 × 1 0 1 无关
11 1011 × 1 1 1 无关
12 1100 0 0 0 0 ✓
13 1101 1 0 1 1 ✓
14 1110 × 0 0 0 无关
15 1111 × 0 1 1 无关

11 个确定的行全部符合。从表上还能看出:化简结果实际上把 7、10、11、15 四个无关项"用成了 1",把 14 "用成了 0",和卡诺图上的圈法一致。(本题已用程序穷举核对,并确认AB‾+DA\overline{B}+D是唯一的最简与或式。)

对比:如果不用无关项

把 × 全当 0,卡诺图化简的结果是

Y=C‾D+AB‾ C‾+A‾ B‾DY=\overline{C}D+A\overline{B}\,\overline{C}+\overline{A}\,\overline{B}D

3 项、8 个因子。用了无关项后只有 2 项、3 个因子,电路简单得多。这就是题目给出∑d\sum d的用意——看到∑d\sum d⁠,一定要想着利用它。

预告:后半问怎么做

题目后半要求"用一片 8 选 1 数据选择器 74HC151 实现"。74HC151 有 3 个地址输入端和 8 个数据输入端,可以直接实现任何 3 变量函数;4 变量函数则要选 3 个变量作地址,把第 4 个变量(或 0、1)接到数据端。具体怎么接、为什么能这样接,第 10 讲会以这道题为例完整讲解。

⚠️ 易错点:

  • 忘了利用无关项,结果虽然逻辑上对,但不是最简,化简题会扣分。
  • 把m14m_{14}这类"用不上的 ×"也硬圈进去,导致多出乘积项。
  • 把∑d\sum d的编号当成必须为 1 写进答案的∑m\sum m里。

四、多输出逻辑函数的化简

大白话

前面都是"一个输出"的电路。实际电路常常有好几个输出,比如同一组输入,既要驱动指示灯Y1Y_1⁠,又要驱动蜂鸣器Y2Y_2⁠。

如果把每个输出各自化成最简,再分别画电路,可能会出现浪费:其实有某个与门的输出可以同时送给两个或门用。就像两家人各自开车去同一个地方,不如拼一辆车。所以多输出化简的目标是:整个电路的门总数最少、总输入端最少,而不是每个输出单独最简。

方法

  1. 先把每个输出单独画卡诺图、单独化简,作为参考;
  2. 对比各输出的卡诺图,找同时属于两个(或多个)输出的 1,看能不能用一个公共的乘积项(共用项)去覆盖它们;
  3. 比较"各自最简"和"利用共用项"两种方案的门数和输入端数,选省的那个。

例 3

用与门和或门实现下面两个输出,要求门的总数最少:

Y1(A,B,C)=∑m(0,5),Y2(A,B,C)=∑m(1,3,5)Y_1(A,B,C)=\sum m(0,5),\qquad Y_2(A,B,C)=\sum m(1,3,5)

解:

方案一:各自最简。

  • Y1Y_1的两个 1(⁠m0m_0=000、m5m_5=101)不相邻,无法合并:Y1=A‾ B‾ C‾+AB‾CY_1=\overline{A}\,\overline{B}\,\overline{C}+A\overline{B}C⁠。
  • Y2Y_2⁠:m1m_1⁠、m3m_3 → A‾C\overline{A}C⁠;m1m_1⁠、m5m_5 → B‾C\overline{B}C⁠。Y2=A‾C+B‾CY_2=\overline{A}C+\overline{B}C⁠。

一共需要 4 个不同的与门(⁠A‾ B‾ C‾\overline{A}\,\overline{B}\,\overline{C}⁠、AB‾CA\overline{B}C⁠、A‾C\overline{A}C⁠、B‾C\overline{B}C⁠)加 2 个或门。

方案二:利用共用项。

注意m5m_5(⁠AB‾CA\overline{B}C⁠)同时是Y1Y_1和Y2Y_2的 1。Y1Y_1中AB‾CA\overline{B}C这个与门反正要做,那Y2Y_2也可以直接借用它来覆盖m5m_5⁠,于是Y2Y_2只需再用A‾C\overline{A}C覆盖m1m_1⁠、m3m_3⁠:

Y1=A‾ B‾ C‾+AB‾C,Y2=A‾C+AB‾CY_1=\overline{A}\,\overline{B}\,\overline{C}+A\overline{B}C,\qquad Y_2=\overline{A}C+A\overline{B}C

单看Y2=A‾C+AB‾CY_2=\overline{A}C+A\overline{B}C并不是最简(⁠AB‾CA\overline{B}C比B‾C\overline{B}C多一个因子),但从整体看:

方案 与门个数 与门输入端总数 或门
各自最简 4 3+3+2+2=10 2 个 2 输入
利用共用项AB‾CA\overline{B}C 3 3+3+2=8 2 个 2 输入

方案二少用 1 个与门、少 2 个输入端,整体更省。

⚠️ 易错点:

  • 多输出化简的目标是"整体最简",所以某个输出单看可能不是最简式,这是正常的。
  • 不是任何情况利用共用项都能省门,要实际比较两种方案。

五、逻辑函数形式的变换

大白话

化简得到的是最简与或式,可是实际做电路时,手头的芯片可能只有一种门。比如一片 74HC00 里有 4 个 2 输入与非门,如果整个电路全用与非门搭,就能少买几种芯片。所以要把与或式"翻译"成只用某一种门的形式。

翻译的工具只有两个:两次取反等于不变(⁠Y‾‾=Y\overline{\overline{Y}}=Y⁠)和摩根定理(⁠X+Y‾=X‾ Y‾\overline{X+Y}=\overline{X}\,\overline{Y}⁠,XY‾=X‾+Y‾\overline{XY}=\overline{X}+\overline{Y}⁠)。

下面以Y=AC+BC‾Y=AC+B\overline{C}为例,演示三种常用形式。

1. 与非-与非式(只用与非门)

方法:对最简与或式两次取反,然后用摩根定理把里面那层取反拆开。

Y=AC+BC‾=AC+BC‾‾‾=AC‾⋅BC‾‾‾Y=AC+B\overline{C}=\overline{\overline{AC+B\overline{C}}}=\overline{\overline{AC}\cdot\overline{B\overline{C}}}

逐行拆解:

  • 第二个等号:外面套两层横线,值不变;
  • 第三个等号:对里层AC+BC‾‾\overline{AC+B\overline{C}}用摩根定理"或变与、各项分别取反",变成AC‾⋅BC‾‾\overline{AC}\cdot\overline{B\overline{C}}⁠;
  • 结果:AC‾\overline{AC}是一个与非门,BC‾‾\overline{B\overline{C}}是一个与非门,外面再一个与非门把它们"与非"起来。

电路结构:第一级每个乘积项一个与非门,第二级一个与非门。与或式中的"与门 + 或门"直接换成"与非门 + 与非门",连线都不用改。(⁠C‾\overline{C}若没有现成的,可用一个两输入并联的与非门当反相器。)

2. 与或非式(用与或非门)

与或非门是一种集成门,功能是"先与、再或、最后取反":Y=AB+CD‾Y=\overline{AB+CD}⁠。

方法:先求Y‾\overline{Y}的最简与或式(卡诺图圈 0最方便),再整体取反。

先画Y=AC+BC‾Y=AC+B\overline{C}的卡诺图(⁠ACAC占m5m_5⁠、m7m_7⁠,BC‾B\overline{C}占m2m_2⁠、m6m_6⁠),然后圈 0:

AA \ BCBC 00 01 11 10
0 0 0 0 1
1 0 1 1 1

0 格是m0m_0⁠、m1m_1⁠、m3m_3⁠、m4m_4⁠:

  • m1m_1⁠、m3m_3⁠:A=0A=0⁠、C=1C=1 → A‾C\overline{A}C⁠;
  • m0m_0⁠、m4m_4⁠:B=0B=0⁠、C=0C=0 → B‾ C‾\overline{B}\,\overline{C}⁠。

所以Y‾=A‾C+B‾ C‾\overline{Y}=\overline{A}C+\overline{B}\,\overline{C}⁠,于是

Y=A‾C+B‾ C‾‾Y=\overline{\overline{A}C+\overline{B}\,\overline{C}}

这就是与或非式,一个与或非门就能实现(输入端需要A‾\overline{A}⁠、B‾\overline{B}⁠、C‾\overline{C}⁠)。

3. 或非-或非式(只用或非门)

方法:先得到最简或与式(对Y‾\overline{Y}的与或式取反、用摩根定理展开),再对或与式两次取反,用摩根定理拆开里层。

由上面Y‾=A‾C+B‾ C‾\overline{Y}=\overline{A}C+\overline{B}\,\overline{C}⁠,取反:

Y=A‾C‾⋅B‾ C‾‾=(A+C‾)(B+C)Y=\overline{\overline{A}C}\cdot\overline{\overline{B}\,\overline{C}}=(A+\overline{C})(B+C)

这是最简或与式。再两次取反,拆里层:

Y=(A+C‾)(B+C)‾‾=A+C‾‾+B+C‾‾Y=\overline{\overline{(A+\overline{C})(B+C)}}=\overline{\overline{A+\overline{C}}+\overline{B+C}}

电路结构:第一级两个或非门分别算A+C‾‾\overline{A+\overline{C}}⁠、B+C‾\overline{B+C}⁠,第二级一个或非门。

验算:取ABC=011ABC=011⁠:原式AC+BC‾=0+0=0AC+B\overline{C}=0+0=0⁠;或非-或非式A+C‾‾=0+0‾=1\overline{A+\overline{C}}=\overline{0+0}=1⁠,B+C‾=1+1‾=0\overline{B+C}=\overline{1+1}=0⁠,Y=1+0‾=0Y=\overline{1+0}=0⁠。✓

4. 把真题结果也变换一下

对 2026 回忆题第 5 题的结果Y=AB‾+DY=A\overline{B}+D⁠:

  • 与非-与非式:
Y=AB‾‾⋅D‾‾Y=\overline{\overline{A\overline{B}}\cdot\overline{D}}

只用 2 输入与非门的电路见图 2(⁠B‾\overline{B}⁠、D‾\overline{D}都用两输入并联的与非门产生)。

只用 2 输入与非门实现 Y=AB'+D & G1 & G2 & G3 & G4 B A B' D (AB')' D' Y G1、G3 两输入并在一起当反相器;Y = ((AB')' · D')' = AB' + D

图 2:只用 4 个 2 输入与非门(正好是一片 74HC00)实现Y=AB‾+DY=A\overline{B}+D

  • 与或非式:卡诺图圈 0(⁠m0m_0⁠、m2m_2⁠、m4m_4⁠、m6m_6⁠、m12m_{12}⁠,可借用m14m_{14}这个 ×):m0,m2,m4,m6m_0,m_2,m_4,m_6(⁠A=0A=0⁠、D=0D=0⁠)→ A‾ D‾\overline{A}\,\overline{D}⁠;m4,m6,m12,m14m_4,m_6,m_{12},m_{14}(⁠B=1B=1⁠、D=0D=0⁠)→ BD‾B\overline{D}⁠。所以Y‾=A‾ D‾+BD‾\overline{Y}=\overline{A}\,\overline{D}+B\overline{D}⁠,
Y=A‾ D‾+BD‾‾Y=\overline{\overline{A}\,\overline{D}+B\overline{D}}
  • 最简或与式与或非-或非式:
Y=(A+D)(B‾+D)=A+D‾+B‾+D‾‾Y=(A+D)(\overline{B}+D)=\overline{\overline{A+D}+\overline{\overline{B}+D}}

(注意圈 0 时 × 也可以按需当 0 圈进去,这里用了m14m_{14}⁠;而圈 1 时它被当成了 0。同一个 × 在两种圈法中可以有不同的取舍,各自独立。)

⚠️ 易错点:

  • 与非-与非式要从与或式出发;或非-或非式要从或与式出发。方向弄反就会越变越乱。
  • 摩根定理只拆里层那一道横线,最外层横线要保留,它就是第二级的与非(或非)门。
  • 与或非式里的Y‾\overline{Y}要用圈 0 求,别直接对YY的与或式每项取反。

速记卡

项目 要点
无关项 约束项(输入不会出现)+ 任意项(出现了也无所谓);记作∑d(⋯ )\sum d(\cdots)⁠,卡诺图填 ×
× 的用法 能让圈变大才当 1,否则当 0;不单独圈 ×;不必全用
验算 只核对非无关项的行
2026 第 5 题 Y=∑m(1,3,5,8,9,13)+∑d(7,10,11,14,15)=AB‾+DY=\sum m(1,3,5,8,9,13)+\sum d(7,10,11,14,15)=A\overline{B}+D(×7、10、11、15 当 1,×14 当 0);74HC151 实现见第 10 讲
多输出 目标是整体门数最少;找共用项;单个输出可不是最简
与非-与非 与或式两次取反,摩根拆里层:P1‾⋅P2‾⋯‾\overline{\overline{P_1}\cdot\overline{P_2}\cdots}
与或非 圈 0 得Y‾\overline{Y}的与或式,Y=Y‾‾Y=\overline{\overline{Y}}
或非-或非 先求最简或与式,两次取反,摩根拆里层:S1‾+S2‾+⋯‾\overline{\overline{S_1}+\overline{S_2}+\cdots}

自测练习

1. 化简Y(A,B,C)=∑m(1,3)+∑d(5,7)Y(A,B,C)=\sum m(1,3)+\sum d(5,7)⁠。

答案与提示

m1m_1⁠、m3m_3和 ×5、×7 组成中间两列 4 格圈(⁠C=1C=1⁠)。Y=CY=C⁠。

2. 化简Y(A,B,C,D)=∑m(0,2,8)+∑d(10,12,14)Y(A,B,C,D)=\sum m(0,2,8)+\sum d(10,12,14)⁠。

答案与提示

四个角m0m_0⁠、m2m_2⁠、m8m_8和 ×10 组成 4 格圈 → B‾ D‾\overline{B}\,\overline{D}⁠。×12、×14 不用。Y=B‾ D‾Y=\overline{B}\,\overline{D}⁠。

3. 输入ABCDABCD为 8421BCD 码,当它表示的十进制数为 1、2、5、6、9 之一时Y=1Y=1⁠。写出YY的∑m+∑d\sum m+\sum d形式并化简。

答案与提示

Y=∑m(1,2,5,6,9)+∑d(10,11,12,13,14,15)Y=\sum m(1,2,5,6,9)+\sum d(10,11,12,13,14,15)⁠。CD=01CD=01列:m1,m5,m9m_1,m_5,m_9加 ×13 → C‾D\overline{C}D⁠;CD=10CD=10列:m2,m6m_2,m_6加 ×14、×10 → CD‾C\overline{D}⁠。Y=C‾D+CD‾=C⊕DY=\overline{C}D+C\overline{D}=C\oplus D⁠。

4. 输入为 8421BCD 码,表示的数小于 5 时Y=1Y=1⁠。求最简与或式,并说明结果是否唯一。

答案与提示

Y=∑m(0,1,2,3,4)+∑d(10∼15)Y=\sum m(0,1,2,3,4)+\sum d(10\sim15)⁠。m0∼m3m_0\sim m_3(第 1 行)→ A‾ B‾\overline{A}\,\overline{B}⁠;m4m_4可与m0m_0圈成A‾ C‾ D‾\overline{A}\,\overline{C}\,\overline{D}⁠,也可与 ×12 圈成BC‾ D‾B\overline{C}\,\overline{D}⁠,两者因子数相同。所以Y=A‾ B‾+A‾ C‾ D‾Y=\overline{A}\,\overline{B}+\overline{A}\,\overline{C}\,\overline{D}或Y=A‾ B‾+BC‾ D‾Y=\overline{A}\,\overline{B}+B\overline{C}\,\overline{D}⁠,结果不唯一。

5.(华师真题风格)化简Y(A,B,C,D)=∑m(2,3,7,9,11,13)+∑d(1,10,15)Y(A,B,C,D)=\sum m(2,3,7,9,11,13)+\sum d(1,10,15)⁠,写出最简与或式,并说明哪些无关项被当作 1。

答案与提示
  • m9,m11,m13m_9,m_{11},m_{13}与 ×15 组成 2×2 圈(⁠A=1A=1⁠、D=1D=1⁠)→ ADAD⁠;
  • m3,m7,m11m_3,m_7,m_{11}与 ×15 组成整列圈(⁠C=1C=1⁠、D=1D=1⁠)→ CDCD⁠;
  • m2,m3m_2,m_3与 ×10、m11m_{11}组成上下相接的圈(⁠B=0B=0⁠、C=1C=1⁠)→ B‾C\overline{B}C⁠。

Y=AD+CD+B‾CY=AD+CD+\overline{B}C⁠。×10、×15 当 1,×1 当 0。

6. 把Y=AB+A‾CY=AB+\overline{A}C分别写成与非-与非式和或非-或非式。

答案与提示

与非-与非:Y=AB‾⋅A‾C‾‾Y=\overline{\overline{AB}\cdot\overline{\overline{A}C}}⁠。

或非-或非:圈 0 得Y‾=AB‾+A‾ C‾\overline{Y}=A\overline{B}+\overline{A}\,\overline{C}⁠,所以Y=(A‾+B)(A+C)Y=(\overline{A}+B)(A+C)⁠,即Y=A‾+B‾+A+C‾‾Y=\overline{\overline{\overline{A}+B}+\overline{A+C}}⁠。

7. 两输出函数Y1(A,B,C)=∑m(0,5)Y_1(A,B,C)=\sum m(0,5)⁠,Y2(A,B,C)=∑m(1,3,5)Y_2(A,B,C)=\sum m(1,3,5)⁠。若只用与门、或门实现,最少需要几个与门?写出对应的表达式。

答案与提示

3 个。Y1=A‾ B‾ C‾+AB‾CY_1=\overline{A}\,\overline{B}\,\overline{C}+A\overline{B}C⁠,Y2=A‾C+AB‾CY_2=\overline{A}C+A\overline{B}C⁠,与门AB‾CA\overline{B}C两个输出共用(见例 3)。


下一讲预告

逻辑代数的"数学工具箱"到这里就齐了;下一讲(第 05 讲上)开始走进电路内部,看二极管、三极管、MOS 管怎么当开关,搭出最简单的门电路。

👉 点击进入下一讲:第05讲(上)|半导体开关与二极管门电路

评论

还没有评论。 来写第一条。

留下一条评论

选填,不会公开

纯文本,链接会自动识别。