考研数电·零基础讲义 · 第 02 讲(下)|逻辑代数的公式与三个基本定理
学完本讲,你能熟练使用逻辑代数的基本公式和常用公式(吸收律、冗余项定理等),会用代入定理、反演定理求多变量公式和反函数,会写对偶式。预计用时:2–2.5 小时(含练习)。
本讲地图#
- 学什么:18 条基本公式(哪些和普通代数一样、哪些"反直觉");6 组常用公式及其证明;代入定理、反演定理、对偶定理。
- 为什么重要:这些公式是第 04 讲"公式化简法"的全部工具。化简得越简单,电路用的门越少、越便宜、越可靠。
- 华师怎么考:考纲"逻辑运算和逻辑函数的化简"。真题里的化简一般藏在设计题中(比如 2026 回忆题第 5 题先化简再用 74HC151 实现),求反函数、德·摩根变换在"把表达式改成与非形式""用译码器/数据选择器实现函数"时都要用到。
- 教材对应:阎石第六版 第 2 章 2.3 节(基本公式和常用公式)、2.4 节(代入、反演、对偶三个定理)。
前置知识#
- 与、或、非及复合逻辑的真值表和表达式,运算优先级(见第 02 讲(上))。
一、为什么要学公式#
大白话#
同一个逻辑功能,可以有很多种写法。比如Y=AB+AB+AB和Y=A+B,真值表一模一样(后面会证明)。但前者要 3 个与门、2 个非门、1 个三输入或门;后者只要 1 个或门。
公式就是"等价变形"的规则,就像普通代数里a(b+c)=ab+ac一样,帮助我们把复杂的式子变成简单的式子,而功能不变。
怎么证明一个公式对不对#
逻辑变量只有 0 和 1,所以有一个"笨但绝对可靠"的办法:列真值表。把所有变量组合代入等式两边,如果每一行结果都相同,等式就成立。2 个变量 4 行,3 个变量 8 行,手算完全可行。
二、基本公式(布尔恒等式)#
公式表#
左右两列是一一对应的"对偶"关系(第五节会讲),先整体看一遍:
| 序号 |
公式 |
序号 |
公式 |
名称 |
| (1) |
0⋅A=0 |
(11) |
1+A=1 |
0-1 律 |
| (2) |
1⋅A=A |
(12) |
0+A=A |
自等律 |
| (3) |
A⋅A=A |
(13) |
A+A=A |
重叠律 |
| (4) |
A⋅A=0 |
(14) |
A+A=1 |
互补律 |
| (5) |
AB=BA |
(15) |
A+B=B+A |
交换律 |
| (6) |
A(BC)=(AB)C |
(16) |
A+(B+C)=(A+B)+C |
结合律 |
| (7) |
A(B+C)=AB+AC |
(17) |
A+BC=(A+B)(A+C) |
分配律 |
| (8) |
AB=A+B |
(18) |
A+B=A⋅B |
德·摩根定理(反演律) |
| (9) |
A=A |
(10) |
1=0, 0=1 |
还原律 / 常量求反 |
(序号沿用阎石教材表 2.3.1,方便你对照课本。)
逐条拆解:哪些"像普通代数",哪些"不像"#
和普通代数一样的(放心用):
- (2) 1⋅A=A、(12) 0+A=A、(1) 0⋅A=0:乘 1 不变、加 0 不变、乘 0 得 0;
- (5)(15) 交换律、(6)(16) 结合律;
- (7) 乘法对加法的分配律A(B+C)=AB+AC,就是普通的"乘开括号"。
和普通代数不一样、要特别记住的:
- (11) 1+A=1:或运算"有 1 出 1",不管A是什么,结果都是 1。普通代数里1+a可不等于 1。
- (3)(13) 重叠律A⋅A=A,A+A=A:逻辑里没有"平方"和"倍数"。A⋅A不是A2,A+A也不是2A。
- (4)(14) 互补律AA=0,A+A=1:一个变量和它的反,不可能同时为 1(与得 0),也一定有一个为 1(或得 1)。
- (17) A+BC=(A+B)(A+C):加法对乘法也能分配!普通代数里a+bc=(a+b)(a+c),但逻辑代数里成立。这条最反直觉,下面用真值表证明。
- (8)(18) 德·摩根定理:普通代数里根本没有对应的东西,是逻辑代数最重要的公式之一,下面单独讲。
例题 1:用真值表证明 (17) A+BC=(A+B)(A+C)#
| A |
B |
C |
BC |
左边A+BC |
A+B |
A+C |
右边(A+B)(A+C) |
| 0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
| 0 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
| 0 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
| 0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
| 1 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
| 1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
| 1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
| 1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
左边一列和右边一列 8 行完全相同,等式成立。
也可以用公式推:把右边乘开,(A+B)(A+C)=AA+AC+AB+BC=A+AC+AB+BC=A(1+C+B)+BC=A+BC。用到了重叠律AA=A和1+⋯=1。
德·摩根定理(反演律)#
AB=A+B,A+B=A⋅B
大白话:
- "不是(A 和 B 都成立)" = "A 不成立,或者 B 不成立"。比如"不是(既有钱又有空)",就是"要么没钱,要么没空"。
- "不是(A 或 B 成立)" = "A 不成立,并且 B 不成立"。比如"既不下雨也不刮风",就是"没下雨并且没刮风"。
操作口诀:"长线断开,运算变号"——一条长横线断成几条短横线(分别盖在每个变量上),中间的"与"变"或"、"或"变"与"。
图 1:德·摩根定理的门电路形式。右侧真值表逐行高亮,两组列完全一样(动画循环播放)。
从门电路角度看:与非门 = 输入先取反的或门,或非门 = 输入先取反的与门。看电路图时遇到"输入端带小圆圈的或门",要能认出它其实就是与非门。
易错点 ⚠️#
- 逻辑代数不能"移项",也不能"约分"。
- 由A+B=A+C 推不出 B=C。反例:A=1,B=0,C=1时,两边都等于 1,但B=C。
- 由AB=AC 推不出 B=C。反例:A=0,B=0,C=1。
- 因为逻辑代数里没有减法和除法。
- AB=AB!长横线不能直接"拆"成短横线而不改运算符。正确的是AB=A+B。
三、常用公式#
下面 6 组公式都可以由基本公式推出来,但因为化简时太常用了,直接记住能省大量时间。序号沿用教材表 2.3.3。
公式 (21):A+AB=A(吸收律)#
证明:
A+AB=A(1+B)=A⋅1=A
大白话:两个乘积项相加,如果一项包含了另一项的全部因子(AB里有A),那么"更长"的那项是多余的,被"吸收"掉。
想象成面积:AB是A和B的重叠部分,它本来就在A里面,再加上它,总面积还是A。
图 2:用面积图理解两条吸收律。
公式 (22):A+AB=A+B#
证明(用 (17) 分配律):
A+AB=(A+A)(A+B)=1⋅(A+B)=A+B
大白话:两项相加,如果一项的反(A)是另一项里的因子,这个因子可以直接删掉。从图 2 右边看,AB是"在B里但不在A里"的部分,补到A上,正好就是A和B的全部,即A+B。
公式 (23):AB+AB=A(并项)#
证明:
AB+AB=A(B+B)=A⋅1=A
大白话:两项"其他因子都一样,只有一个变量一项是原、一项是反",就能合并成一项,那个变量消失。这是后面卡诺图化简(第 04 讲(中))的核心原理——相邻的两个格子能合并。
公式 (24):A(A+B)=A#
证明:
A(A+B)=AA+AB=A+AB=A
最后一步就是 (21)。大白话:A乘一个"包含A的和",结果就是A。
公式 (25):AB+AC+BC=AB+AC(冗余项定理)#
证明(配项法,给BC乘一个1=A+A):
AB+AC+BC=AB+AC+BC(A+A)=AB+AC+ABC+ABC=AB(1+C)+AC(1+B)=AB+AC
怎么认:
- 找到两个乘积项,一项含A、另一项含A(这里是AB和AC);
- 把这两项去掉A、A后剩下的因子乘起来,得到BC;
- 如果式子里还有BC这一项,它就是多余的(冗余项),可以删掉。
推广:如果第三项是BC再乘上别的因子(比如BCD),它同样多余:
AB+AC+BCD=AB+AC
大白话:当BC=1时,B=1且C=1;此时不管A是 0 还是 1,AB和AC中总有一项为 1。所以BC这一项"能做的事"前两项已经做了。
公式 (26):AAB=AB;AAB=A#
证明(先用德·摩根):
AAB=A(A+B)=AA+AB=0+AB=AB
AAB=A(A+B)=A+AB=A
大白话:A乘一个"含A的乘积项的非"时,长横线下的A可以删掉;A乘它时,整个长横线项都可以删掉。
例题 2:用常用公式化简#
(1) Y=AB+AB+AB
Y=(AB+AB)+AB=A+AB(公式 23 并项)=A+B(公式 22)
这就是第一节说的:一个复杂的式子化简后只剩一个或门。
(2) Y=AB+AC+BC
- 找含A和A的两项:AB和AC;
- 去掉A、A后剩B和C,乘起来是BC;
- 式子里正好有BC,它是冗余项,删掉。
Y=AB+AC
(3) Y=AAB:由公式 (26),Y=AB。
验证:每一题都可以列真值表核对化简前后完全一致(本讲所有结果都已用程序穷举核对过)。
易错点 ⚠️#
- 公式 (22) 只能删"反变量因子":A+AB=A+B。但A+AB要用 (21) 吸收成A,不能套成A+B。
- 冗余项定理要求两项中的变量一原一反(A和A)。AB+AC+BC里没有这样的一对,BC 不是冗余项,不能删。
- 化简完一定要用真值表或代入几组值抽查一下。
四、三个基本定理#
1. 代入定理#
内容:在任何一个包含变量A的逻辑等式中,如果把所有出现A的地方都换成同一个逻辑式,等式仍然成立。
为什么成立:等式对A=0和A=1都成立;而任何逻辑式的取值也只能是 0 或 1,所以拿它替换A,等式照样成立。
用途:把两变量的公式推广到多变量。
例题 3:把德·摩根定理推广到三个变量#
已知A+B=A⋅B。把式中的B全部换成(B+C):
A+(B+C)=A⋅B+C=A⋅B⋅C
同理,由AB=A+B,把B换成BC:
A⋅(BC)=A+BC=A+B+C
所以德·摩根定理对任意多个变量都成立:
A+B+C+⋯=A⋅B⋅C⋯,ABC⋯=A+B+C+⋯
例题 3(续):德·摩根的两个典型用法#
用法一:把长横线"推"进去。 求AB+C的不带长横线的形式。
AB+C=AB⋅C=(A+B)C=(A+B)C=AC+BC
第一步对"或"用德·摩根(长线断开,或变与),第二步对AB再用一次(与变或),第三步用还原律B=B。一层一层往里推,每推一层运算符变一次号。
用法二:把与或式变成"与非-与非"式。 把Y=AB+CD改写成只用与非运算的形式。
先在整个式子上加两条横线(还原律,值不变),再对下面那条用德·摩根:
Y=AB+CD=AB⋅CD
最外层是"AB与CD再取反",即一个与非门;里面的AB、CD也是与非门。所以Y可以只用 3 个两输入与非门实现。这个技巧在第 04 讲(下)"逻辑形式变换"和用与非门设计电路时天天用。
注意:代入时必须把所有出现的A都换掉,只换一部分就不对了。另外,对一个乘积项或逻辑式整体求反时,要先给它加括号再求反。
2. 反演定理(求反函数)#
内容:对任意一个逻辑式Y,如果把其中:
- 所有的"·"换成"+","+"换成"·";
- 所有的 0 换成 1,1 换成 0;
- 所有的原变量换成反变量,反变量换成原变量;
得到的结果就是Y(Y的反函数)。
两条必须遵守的规则:
- 保持原来的运算顺序:"先括号、再与、最后或"。原来先算的部分,换完后还要先算——所以常常需要补括号。
- 不属于单个变量上的长横线保持不变(长横线下面的内容照样按规则变换,但长横线本身留着)。
德·摩根定理其实就是反演定理最简单的特例。
例题 4:求反函数#
已知Y=AB+CD,求Y。
第 1 步:看运算顺序。 原式是"AB与、CD与,然后两者或"。换完后,或变成与,与变成或,而原来的两个"与项"要先算,所以各自加括号。
第 2 步:逐个替换。
- AB → A变A,B变B,与变或 → (A+B);
- 中间的 "+" → "·";
- CD → (C+D)。
Y=(A+B)(C+D)
第 3 步(如需要):展开成与或式。
Y=AC+AD+BC+BD
图 3:同一个式子做反演和做对偶,替换规则的区别。
例题 5:含长横线的反函数#
已知Y=A+B+C,求Y。
- 第一个A → A;
- 中间的 "+" → "·";
- B+C这条长横线不在单个变量上,保留;横线下面照规则换:B变B,"+" 变 "·",C变C,得B⋅C。
Y=A⋅BC
继续化简:由德·摩根,BC=B+C,所以
Y=A(B+C)=AB+AC
核对:原式Y=A+B+C=A+BC(德·摩根)。再对它直接用反演:Y=A(B+C),结果一致 ✓。
例题 6:运算顺序的陷阱#
求Y=AB+C的反函数。
- 正确:AB要先算,换完要加括号:Y=(A+B)C。
- 错误:直接写成A+BC。按优先级,这个式子会先算BC再或A,意思完全变了。例如A=0,B=1,C=1时,Y=0+1=1,Y应为 0;正确式子(1+0)⋅0=0 ✓,错误式子1+0=1 ✗。
3. 对偶定理#
对偶式的定义:对任意逻辑式Y,把其中的"·"换成"+","+"换成"·",0 换成 1,1 换成 0(变量不动),得到的新式子叫Y的对偶式,记作YD。
例如:
- Y=A(B+C),则YD=A+BC;
- Y=AB+CD,则YD=(A+B)(C+D)(长横线照留);
- Y=AB+C+D,则YD=(A+B)⋅CD。
对偶定理:如果两个逻辑式相等,那么它们的对偶式也相等。
用途:
- 公式"买一送一"。回头看基本公式表,(1) 和 (11)、(2) 和 (12)……(8) 和 (18) 两两互为对偶。只要证明了左边一列,右边一列自动成立。
- 有时证明对偶式相等比证明原式容易。
例题 7:用对偶定理证明 (17)#
要证A+BC=(A+B)(A+C)。
两边分别写对偶式:左边A+BC的对偶式是A(B+C);右边(A+B)(A+C)的对偶式是AB+AC。
而A(B+C)=AB+AC就是普通的乘法分配律 (7),显然成立。由对偶定理,原式 (17) 也成立。
例题 8:由常用公式得到新公式#
对公式 (22) A+AB=A+B两边取对偶:
A(A+B)=AB
对冗余项定理 (25) 取对偶:
(A+B)(A+C)(B+C)=(A+B)(A+C)
这两个新公式在化简"或与式"时很有用,而且不用再证明。
反演和对偶的区别(必考辨析)#
|
反演(求Y) |
对偶(求YD) |
| "·" ↔ "+" |
换 |
换 |
| 0 ↔ 1 |
换 |
换 |
| 原变量 ↔ 反变量 |
换 |
不换 |
| 得到的是 |
反函数,和Y的值处处相反 |
对偶式,一般不是 Y的反 |
| 运算顺序、长横线 |
保持 |
保持 |
例如Y=AB:反函数Y=A+B,对偶式YD=A+B。A=1,B=0时,Y=0,Y=1,YD=1;A=B=0时,Y=1而YD=0——两者不是一回事。
易错点 ⚠️#
- 反演时忘记补括号,是失分最多的地方。
- 反演时把长横线也去掉了,是第二多的错误。
- 把对偶式当成反函数。记住:对偶不换变量。
- 对一个式子取两次对偶,会回到它本身:(YD)D=Y。
五、综合运用:证明等式的三种思路#
到这里,我们手上已经有三类工具:真值表、公式推导、对偶定理。证明一个逻辑等式时,可以按下面的顺序考虑:
- 变量少(2–3 个)时,真值表最稳:不需要技巧,不会漏情况,考试时间允许就用它。
- 想看出"为什么相等"时,用公式推导:通常是"先展开(乘开括号),再用吸收、并项、冗余项把多余的项消掉"。
- 原式是"或与式"、不好推时,试试对偶:先证明两边的对偶式相等,再由对偶定理得到原式。
例题 9:用公式推导证明(A+B)(A+C)=AC+AB#
第 1 步:把左边乘开。
(A+B)(A+C)=AA+AC+AB+BC
第 2 步:用互补律消掉AA=0。
=AC+AB+BC
第 3 步:找冗余项。 AC和AB中A一原一反,剩余因子乘积CB正是第三项,删去:
=AC+AB
等于右边,得证。
这个结果本身也很有用:一个"或与式"(A+B)(A+C)可以直接写成与或式AC+AB——含A的那个括号里的"另一个因子"去和A配,含A的括号里的"另一个因子"去和A配。
例题 10:几条关于异或、同或的恒等式#
上一讲学过A⊕B=AB+AB,A⊙B=AB+AB。用本讲的公式可以证明下面几条(都可以用真值表核对):
| 恒等式 |
说明 |
| A⊕B=A⊙B |
异或的反是同或(练习 6 用德·摩根证明) |
| A⊕B=A⊕B=A⊙B |
一个输入取反,异或就变同或 |
| A⊕B=A⊕B |
两个输入都取反,结果不变 |
| A(B⊕C)=AB⊕AC |
与对异或满足分配律 |
以第二条为例:A⊕B=A⋅B+A⋅B=AB+AB=A⊙B。这里用的是代入定理——把异或公式里的B全部换成B,再用还原律B=B。
这些式子在设计奇偶校验电路、加法器(第 11 讲)时会反复出现:比如手头只有异或门却需要同或,只要把其中一个输入先取反即可。
速记卡#
| 类别 |
公式 |
| 0-1 律 |
0⋅A=0,1+A=1;1⋅A=A,0+A=A |
| 重叠律 |
AA=A,A+A=A |
| 互补律 |
AA=0,A+A=1 |
| 分配律 |
A(B+C)=AB+AC;A+BC=(A+B)(A+C) |
| 德·摩根 |
AB=A+B,A+B=AB(多变量同样成立) |
| 还原律 |
A=A |
| 吸收 (21) |
A+AB=A |
| (22) |
A+AB=A+B |
| 并项 (23) |
AB+AB=A |
| (24) |
A(A+B)=A |
| 冗余项 (25) |
AB+AC+BC(D)=AB+AC |
| (26) |
AAB=AB,AAB=A |
| 代入定理 |
等式中某变量全部换成同一个式子,等式仍成立 |
| 反演定理 |
·↔+,0↔1,原↔反 → Y;保顺序(补括号),长横线不动 |
| 对偶定理 |
·↔+,0↔1,变量不动 → YD;原式相等则对偶式相等 |
| 禁忌 |
不能移项、不能约分;AB=AB |
自测练习#
1. 用真值表证明A+AB=A+B。
答案与提示
| A |
B |
AB |
A+AB |
A+B |
| 0 |
0 |
0 |
0 |
0 |
| 0 |
1 |
1 |
1 |
1 |
| 1 |
0 |
0 |
1 |
1 |
| 1 |
1 |
0 |
1 |
1 |
最后两列相同,得证。
2. 化简Y=AB+ABC+AB。
答案与提示
AB+ABC=AB(吸收律 21,ABC含AB的全部因子);AB+AB=A(并项 23)。所以Y=A。
3. 化简Y=AC+AB+BC。
答案与提示
AC与AB中A一原一反,剩余因子乘积为CB,正好是第三项,按冗余项定理删去:Y=AC+AB。
4. 用反演定理求Y=AB+CD的反函数,并展开成与或式。
答案与提示
Y=(A+B)(C+D)(两个与项各补括号)。
展开:Y=AC+AD+BC+BD。
5. 写出Y=(A+B)(C+D)的对偶式和反函数。
答案与提示
对偶式(变量不动):YD=AB+CD。
反函数(变量也换):Y=AB+CD。
对比一下,两者只差在变量的原反上。
6. 用德·摩根定理证明AB+AB=AB+AB(即"异或的反是同或")。
答案与提示
AB+AB=AB⋅AB=(A+B)(A+B)
乘开:AA+AB+AB+BB=0+AB+AB+0=AB+AB。得证。
7. 判断对错,错的举反例:(a) 若A+B=A+C,则B=C;(b) 若AB=AC,则B=C;(c) A+BC=(A+B)(A+C);(d) AB=AB。
答案与提示
- (a) 错。反例A=1,B=0,C=1。
- (b) 错。反例A=0,B=0,C=1。
- (c) 对,分配律 (17)。
- (d) 错。反例A=1,B=0:左边0=1,右边0⋅1=0。正确的是AB=A+B。
8.(华师风格)化简Y=AB+AC+BC+AC,并说明化简后最少需要哪些门实现(输入只提供原变量)。
答案与提示
第 1 步:AB+AC+BC中BC为冗余项,得Y=AB+AC+AC。
第 2 步:AC+AC=A(并项 23),得Y=AB+A。
第 3 步:由公式 (22) 的形式A+AB=A+B(把 (22) 中的A代入A),得Y=A+B。
实现:1 个非门产生A,1 个两输入或门。原来要 4 个与门加一个四输入或门,化简后只要 2 个门。(第 04 讲会系统地学化简方法。)
下一讲预告#
第 03 讲:逻辑函数有哪几种表示方法——真值表、表达式、逻辑图、波形图如何互相转换,以及最小项、最大项和逻辑函数的标准形式。
👉 点击进入下一讲:第03讲|逻辑函数的表示方法:真值表、逻辑式、逻辑图、波形图与标准形式
评论
还没有评论。 来写第一条。