📖 前言:1849年英国数学家乔治,布尔( George Boole )首先提出了描述客观事物逻辑关系的数学方法﹣布尔代数。1938年克劳德.香农( Claude E . Shannon )将布尔代数应用到继电器开关电路的设计,因此又称为开关代数。随着数字技术的发展,布尔代数成为数字逻辑电路分析和设计的基础,又称为逻辑代数。它在二值逻辑电路中得到广泛应用。
目录
🕒 1. 逻辑代数
🕘 1.1 基本逻辑
🕤 1.1.1 与、或、非
-
与逻辑运算:有0出0,全1出1
一般形式: A ⋅ 1 = A A · 1 = A A⋅1=A
A ⋅ 0 = 0 A · \ 0 = 0 A⋅ 0=0
A ⋅ A = A A · A = A A⋅A=A -
或逻辑运算:有1出1,全0出0
一般形式: A + 0 = A A + 0 = A A+0=A
A + 1 = 1 A + 1 = 1 A+1=1
A + A = A A + A = A A+A=A -
非逻辑运算
一般形式: A ‾ ‾ = A \overline{\overline{A}} = A A=A
A + A ‾ = 1 A + \overline{A} = 1 A+A=1
A ⋅ A ‾ = 0 A \cdot \overline{A}= 0 A⋅A=0
逻辑符号表示法:
能实现基本逻辑关系的基本单元电路称为逻辑门电路。如与门、或门、非门(反相器)等。
🕘 1.2 基本逻辑运算
🕤 1.2.1 与非逻辑
P = A ⋅ B ‾ P=\overline{A\cdot B} P=A⋅B 有0出1,全1出0
🕤 1.2.2 或非逻辑
P = A + B ‾ P=\overline{A+ B} P=A+B 全0出1,有1出0
🕤 1.2.3 与或非逻辑
P = A ⋅ B + C ⋅ D ‾ P=\overline{A\cdot B + C\cdot D} P=A⋅B+C⋅D
🕤 1.2.4 同或逻辑
P = A ⊙ B = A ‾ ⋅ B ‾ + A ⋅ B P = A \odot B = \overline{A} \cdot \overline{B} + A \cdot B P=A⊙B=A⋅B+A⋅B 相同得1,相异得0
运算规则: 0 ⊙ 0 = 1 0 \odot 0 = 1 0⊙0=1
0 ⊙ 1 = 0 0 \odot 1 = 0 0⊙1=0
1 ⊙ 0 = 0 1 \odot 0 = 0 1⊙0=0
1 ⊙ 1 = 1 1 \odot 1 = 1 1⊙1=1
一般形式: A ⊙ 0 = A ‾ A \odot 0 = \overline{A} A⊙0=A
A ⊙ 1 = A A \odot 1 = A A⊙1=A
A ⊙ A ‾ = 0 A \odot \overline{A} = 0 A⊙A=0
A ⊙ A = 1 A \odot A = 1 A⊙A=1
🕤 1.2.5 异或逻辑
P = A ⊕ B = A ⋅ B ‾ + A ‾ ⋅ B P = A \oplus B = A \cdot \overline{B} + \overline{A} \cdot B P=A⊕B=A⋅B+A⋅B 相同得0,相异得1
运算规则: 0 ⊕ 0 = 0 0 \oplus 0 = 0 0⊕0=0
0 ⊕ 1 = 1 0 \oplus 1 = 1 0⊕1=1
1 ⊕ 0 = 1 1 \oplus 0 = 1 1⊕0=1
1 ⊕ 1 = 0 1 \oplus 1 = 0 1⊕1=0
一般形式: A ⊕ 0 = A A \oplus 0 = A A⊕0=A
A ⊕ 1 = A ‾ A \oplus 1 = \overline{A} A⊕1=A
A ⊕ A ‾ = 1 A \oplus \overline{A} = 1 A⊕A=1
A ⊕ A = 0 A \oplus A = 0 A⊕A=0
🕤 1.2.6 同或和异或的关系
A ⊙ B = A ⊕ B ‾ A \odot B = \overline{A \oplus B} A⊙B=A⊕B
A ⊕ B = A ⊙ B ‾ A \oplus B = \overline{A \odot B} A⊕B=A⊙B
若两个变量的原变量相同,则取非后的反变量也相同;反之亦然。因此有:
A ⊙ B = A ‾ ⊙ B ‾ A \odot B = \overline{A} \odot \overline{B} A⊙B=A⊙B
A ⊕ B = A ‾ ⊕ B ‾ A \oplus B = \overline{A} \oplus \overline{B} A⊕B=A⊕B
若变量A和变量B相同,则 A ‾ \overline{A} A必与B相异或A与 B ‾ \overline{B} B相异;反之亦然。因此有:
A ⊙ B = A ‾ ⊕ B = A ⊕ B ‾ A \odot B = \overline{A} \oplus B = A \oplus \overline{B} A⊙B=A⊕B=A⊕B
A ⊕ B = A ‾ ⊙ B = A ⊙ B ‾ A \oplus B = \overline{A} \odot B = A \odot \overline{B} A⊕B=A⊙B=A⊙B
复合逻辑符号
🕘 1.3 真值表与逻辑函数
🕤 1.3.1 由逻辑式转换到真值表
具体步骤:
- 确定逻辑表达式中输入变量个数及他们的取值组合,N个输入变量有 2 N 2^N 2N个取值组合。
- 画出输入与输出一一对应的表格,输入变量的取值按二进制递增的自然顺序排列。
- 将逻辑表达式化成
与或
表达式,找出其中所有的与项,在真值表中所有包含与项对应输出填1
,其余输出填0
。
例1:将函数 Y = A ‾ B ‾ ⋅ C Y=\overline{\overline{A}B} \cdot C Y=AB⋅C转换成真值表
解答:逻辑表达式输入变量A、B、C有 2 3 = 8 2^3=8 23=8个取值,将输入与输出一一对应表格,按二进制递增顺序排列。
将逻辑表达式化为与或表达式: Y = A ‾ B ‾ ⋅ C = ( A + B ‾ ) ⋅ C = A C + B ‾ ⋅ C Y=\overline{\overline{A}B} \cdot C = (A+\overline{B}) \cdot C = AC + \overline{B} \cdot C Y=AB⋅C=(A+B)⋅C=AC+B⋅C
在真值表中找出两个与项
,对应值填1,其余填0。
A B C Y 0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 1 1 1 0 0 1 1 1 1 \begin{array}{|c|c|c|c|} \hline A & B & C & Y \\ \hline 0 & 0 & 0 & 0 \\ \hline 0 & 0 & 1 & \color{red}1 \\ \hline 0 & 1 & 0 & 0 \\ \hline 0 & 1 & 1 & 0 \\ \hline 1 & 0 & 0 & 0 \\ \hline 1 & 0 & 1 & \color{red}1 \\ \hline 1 & 1 & 0 & 0 \\ \hline 1 & 1 & 1 & \color{red}1 \\ \hline \end{array} A00001111B00110011C01010101Y01000101
🕤 1.3.2 由真值表转换到逻辑式
具体步骤:
- 将真值表中每一组使输出函数值为
1
的输入变量都写成一个乘积项。 - 将这些乘积项中输入变量取值为
1
的用原变量代替,取值为0
的用反变量代替 - 将这些乘积项
相加
即得逻辑式。
例2:图2-1-6为楼道里“单刀双掷”开关控制楼道灯的示意图。A表示楼上开关,B表示楼下开关,两个开关的上接点分别为a和b;下接点分别为c和d。在楼下时,可以按动开关B开灯,照亮楼梯;到楼上后,可以按动开关A关掉灯。其开通和关断情况与灯亮灭的关系如表2-1-12(a)所示。
- 第一步:消化逻辑命题并列写出真值表
对上述电路,用数学方法来描述。设逻辑变量 P表示灯的亮和灭,取 P = 1 P=1 P=1表示灯亮, P = 0 P=0 P=0表示灯灭;开关A和B接到上接点a和b时为1,接到下接点c和d时为0。这样开关A和B可能有四种组合情况,即A、B为00、01、10、11,列于表2-1-12(b) 的左边,根据开关电路的作用,不难写出P的值,如表2-1-12(b)所示,表2-1-12(b)称为逻辑函数P的真值表。
- 第二步:由真值表写逻辑函数表达式
方法一:把每个输出为1
的一组输入变量组合状态以逻辑乘
形式表示(原变量表示取值1,反变量表示取值0),再将所有的这些逻辑乘进行逻辑加
。这种表达式称为与-或表达式,或称为“积之和”式。
P = A ‾ ⋅ B ‾ + A ⋅ B P= \overline{A} \cdot \overline{B} + A \cdot B P=A⋅B+A⋅B
方法二:把每个输出为0
的一组输入变量组合状态以逻辑加
形式表示(原变量表示取值0,反变量表示取值1),再将所有的这些逻辑加进行逻辑乘
。这种表达式称为或-与表达式,或称为“和之积”式。
P = ( A + B ‾ ) ⋅ ( A ‾ + B ) P = (A + \overline{B}) \cdot (\overline{A} + B) P=(A+B)⋅(A+B)
例3:列出下列问题的真值表,并写出描述该问题的逻辑函数表达式。
有A、B、C3个输入信号,当3个输入信号中有两个或两个以上为高电平时,输出高电平,其余情况下,均输出低电平。
解:根据题意可得到真值表:
A B C P 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 1 \begin{array}{|c|c|c|c|} \hline A & B & C & P \\ \hline 0 & 0 & 0 & 0 \\ \hline 0 & 0 & 1 & 0 \\ \hline 0 & 1 & 0 & 0 \\ \hline 0 & 1 & 1 & \color{red}1 \\ \hline 1 & 0 & 0 & 0 \\ \hline 1 & 0 & 1 & \color{red}1 \\ \hline 1 & 1 & 0 & \color{red}1 \\ \hline 1 & 1 & 1 & \color{red}1 \\ \hline \end{array} A00001111B00110011C01010101P00010111
“积之和” 式: P = A ˉ B C + A B ˉ C + A B C ˉ + A B C P=\bar{A} B C+A \bar{B} C+A B \bar{C}+A B C P=AˉBC+ABˉC+ABCˉ+ABC
“和之积” 式: P = ( A + B + C ) ( A + B + C ˉ ) ( A + B ˉ + C ) ( A ˉ + B + C ) P=(A+B+C)(A+B+\bar{C}) (A+\bar{B}+C)(\bar{A}+B+C) P=(A+B+C)(A+B+Cˉ)(A+Bˉ+C)(Aˉ+B+C)
🕘 1.4 逻辑函数相等
假设F和G都是变量 A 1 、 A 2 、 ⋅ ⋅ ⋅ 、 A n A_1、A_2、···、A_n A1、A2、⋅⋅⋅、An的逻辑函数,如果对应于 A 1 、 A 2 、 ⋅ ⋅ ⋅ 、 A n A_1、A_2、···、A_n A1、A2、⋅⋅⋅、An的任一组状态组合,F和G的值都相同,则F和G是相等的,记作 F = G F=G F=G。
若F=G,则它们具有相同的真值表;反之,若F和G的真值表相同,则F=G 。
适用情况:逻辑表达式简单,逻辑变量较少。
例4: 设 F ( A , B , C ) = A ( B + C ) F(A,B,C)=A(B+C) F(A,B,C)=A(B+C), G ( A , B , C ) = A B + A C G(A,B,C)=AB+AC G(A,B,C)=AB+AC,请证明: F = G F = G F=G。
解:列写函数F和G的真值表,如果二者的真值表完全一致,则说明F=G。
A B C F = A ( B + C ) G = A B + A C 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 0 0 1 0 0 0 0 1 0 1 1 1 1 1 0 1 1 1 1 1 1 1 \begin{array}{ccc|c|c} \hline A & B & C & F=A(B+C) & G=A B+A C \\ \hline 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 1 & 0 & 0 \\ 0 & 1 & 0 & 0 & 0 \\ 0 & 1 & 1 & 0 & 0 \\ 1 & 0 & 0 & 0 & 0 \\ 1 & 0 & 1 & 1 & 1 \\ 1 & 1 & 0 & 1 & 1 \\ 1 & 1 & 1 & 1 & 1 \\ \hline \end{array} A00001111B00110011C01010101F=A(B+C)00000111G=AB+AC00000111
🕤 1.4.1 逻辑代数基本规律
-
自等律
A + 0 = A A ⋅ 1 = A A+0=A \hspace{5em} A \cdot 1=A A+0=AA⋅1=A -
0-1律
A + 1 = 1 A ⋅ 0 = 0 A+1=\ 1 \hspace{5em} A \cdot 0=0 A+1= 1A⋅0=0 -
互补律
A + A ˉ = 1 A ⋅ A ˉ = 0 A+\bar{A}=1 \hspace{5em} A \cdot \bar{A}=0 A+Aˉ=1A⋅Aˉ=0
A ⊙ 0 = A ˉ A ⊕ 1 = A ˉ A\odot 0=\bar{A} \hspace{5em} A \oplus 1=\bar{A} A⊙0=AˉA⊕1=Aˉ
A ⊙ 1 = A A ⊕ 0 = A A\odot 1=A \hspace{5em} A \oplus 0=A A⊙1=AA⊕0=A
A ⊙ A ˉ = 0 A ⊕ A ˉ = 1 A \odot \bar{A}=0 \hspace{5em} A \oplus \bar{A}=1 A⊙Aˉ=0A⊕Aˉ=1 -
交换律
A + B = B + A A ⋅ B = B ⋅ A A+B=B+A \hspace{5em} A \cdot B=B \cdot A A+B=B+AA⋅B=B⋅A
A ⊙ B = B ⊙ A A ⊕ B = B ⊕ A A \odot B=B \odot A \hspace{5em} A \oplus B=B \oplus A A⊙B=B⊙AA⊕B=B⊕A -
结合律
A + B + C = ( A + B ) + C A B C = ( A B ) C A+B+C=(A+B)+C \hspace{5em} ABC=(AB)C A+B+C=(A+B)+CABC=(AB)C
A ⊙ B ⊙ C = ( A ⊙ B ) ⊙ C A ⊕ B ⊕ C = ( A ⊕ B ) ⊕ C A \odot B \odot C=(A \odot B) \odot C \hspace{5em} A \oplus B \oplus C=(A \oplus B) \oplus C A⊙B⊙C=(A⊙B)⊙CA⊕B⊕C=(A⊕B)⊕C -
分配律
A ( B + C ) = A B + A C A + B C = ( A + B ) ( A + C ) A(B+C)=AB+AC \hspace{5em} A+BC=(A+B)(A+C) A(B+C)=AB+ACA+BC=(A+B)(A+C)
A ( B ⊕ C ) = A B ⊕ A C A + ( B ⊙ C ) = ( A + B ) ⊙ ( A + C ) A(B \oplus C)=AB \oplus AC \hspace{5em} A+(B \odot C)=(A+B) \odot (A+C) A(B⊕C)=AB⊕ACA+(B⊙C)=(A+B)⊙(A+C) -
重叠律
A + A = A A ⋅ A = A A+A=A \hspace{5em} A \cdot A=A A+A=AA⋅A=A
A ⊙ A = 1 A ⊕ A = 0 A \odot A=1 \hspace{5em} A \oplus A=0 A⊙A=1A⊕A=0
推广:奇数个A重叠同或运算得A
,偶数个A重叠同或运算得1
;奇数个A重叠异或运算得A
,偶数个A重叠异或运算得0
-
反演律(德·摩根定理)
A + B ‾ = A ˉ ⋅ B ˉ \overline{A+B} = \bar{A} \cdot \bar{B} A+B=Aˉ⋅Bˉ
A B ‾ = A ˉ + B ˉ \overline{AB} = \bar{A}+\bar{B} AB=Aˉ+Bˉ
A ⊙ B ‾ = A ⊕ B \overline{A \odot B} = A \oplus B A⊙B=A⊕B
A ⊕ B ‾ = A ⊙ B \overline{A \oplus B} = A \odot B A⊕B=A⊙B -
调换律
若 A ⊙ B = C A \odot B=C A⊙B=C , 则必有 A ⊙ C = B , B ⊙ C = A A \odot C=B, \quad B \odot C=A A⊙C=B,B⊙C=A
若 A ⊕ B = C A \oplus B=C A⊕B=C , 则必有 A ⊕ C = B , B ⊕ C = A A \oplus C=B, \quad B \oplus C=A A⊕C=B,B⊕C=A
推论:
A ⋅ B = A ⊙ B ⊙ ( A + B ) A + B = A ⊕ B ⊕ ( A ⋅ B ) A \cdot B=A \odot B \odot(A+B) \hspace{5em} A+B=A \oplus B \oplus(A \cdot B) A⋅B=A⊙B⊙(A+B)A+B=A⊕B⊕(A⋅B)
A + B = A ⊙ B ⊙ ( A ⋅ B ) A ⋅ B = A ⊕ B ⊕ ( A + B ) A+B=A \odot B \odot(A \cdot B) \hspace{5em} A \cdot B=A \oplus B \oplus(A+B) A+B=A⊙B⊙(A⋅B)A⋅B=A⊕B⊕(A+B)
对于同或和异或函数, 非运算也可以调换, 即
A ⊙ B ˉ = A ˉ ⊙ B = A ⊙ B ‾ A \odot \bar{B}=\bar{A} \odot B=\overline{A \odot B} A⊙Bˉ=Aˉ⊙B=A⊙B
A ⊕ B ˉ = A ˉ ⊕ B = A ⊕ B ‾ A \oplus \bar{B}=\bar{A} \oplus B=\overline{A \oplus B} A⊕Bˉ=Aˉ⊕B=A⊕B
🕘 1.5 三个规则
🕤 1.5.1 代入规则
任何一个含有变量A的等式,如果将所有出现变量A的地方都代之以一个逻辑函数F,则等式仍然成立。
例5: 已知等式 A ( B + E ) = A B + A E A(B+E)=AB+AE A(B+E)=AB+AE,试证明将所有出现E的地方代之以 ( C + D ) (C+D) (C+D) ,等式仍成立。
解:原式左边= A [ B + ( C + D ) ] = A B + A ( C + D ) = A B + A C + A D A[B+ (C+D) ]=AB+A(C+D) = AB+AC +AD A[B+(C+D)]=AB+A(C+D)=AB+AC+AD
原式右边= A B + A ( C + D ) = A B + A C + A D AB+A(C+D) = AB+AC +AD AB+A(C+D)=AB+AC+AD
所以等式仍然成立。
🕤 1.5.2 反演规则
设 F F F为任意逻辑表达式,若将 F F F中所有运算符、常量及变量作如下变换:
⋅ + 0 1 原变量 反变量 ↓ ↓ ↓ ↓ ↓ ↓ + ⋅ 1 0 反变量 原变量 \begin{array}{cccccc} \cdot & + & 0 & 1 & \text { 原变量 } & \text { 反变量 } \\ \downarrow & \downarrow & \downarrow & \downarrow & \downarrow & \downarrow \\ \\+ & \cdot & 1 & 0 & \text { 反变量 } & \text { 原变量 } \end{array} ⋅↓++↓⋅0↓11↓0 原变量 ↓ 反变量 反变量 ↓ 原变量
则所得新的逻辑式即为 F F F的反函数,记为 F ˉ \bar{F} Fˉ。
例6: 已知 F = A ˉ B ˉ + C D ‾ F=\bar{A}\bar{B}+C\overline{D} F=AˉBˉ+CD,求 F ‾ \overline{F} F
解:由反演规则,可得 F ‾ = ( A + B ) ( C ‾ + D ‾ ) \overline{F} = (A+B)(\overline{C}+\overline{D}) F=(A+B)(C+D)
若用反演律求解,则 F ‾ = A ˉ B ˉ + C D ‾ = A ˉ B ˉ ‾ ⋅ C D ‾ = ( A + B ) ( C ‾ + D ‾ ) \overline{F} = \overline{\bar{A}\bar{B}+CD} = \overline{\bar{A}\bar{B}} \cdot \overline{CD} = (A+B)(\overline{C}+\overline{D}) F=AˉBˉ+CD=AˉBˉ⋅CD=(A+B)(C+D)
例7: 已知 F = A + B + C ˉ D + E ˉ ‾ ‾ F=A+\overline{B+\bar{C} \overline{D+\bar{E}}} F=A+B+CˉD+Eˉ , 求 F ‾ \overline{F} F 。
解:由反演规则, 可得 F ˉ = A ˉ ⋅ B ˉ ⋅ ( C + D ˉ ⋅ E ‾ ‾ ) \bar{F}=\bar{A} \cdot \overline{\bar{B} \cdot(C+\overline{\bar{D} \cdot E}}) Fˉ=Aˉ⋅Bˉ⋅(C+Dˉ⋅E)
由求反函数注意:① 保持原式运算的优先次序;
② 原式中的不属于单变量上的非号不变。
🕤 1.5.3 对偶规则
设 F F F为任意逻辑表达式,若将 F F F中所有运算符和常量作如下变换:
⋅ + 0 1 ↓ ↓ ↓ ↓ + ⋅ 1 0 \begin{array}{cccccc} \cdot & + & 0 & 1 \\ \downarrow & \downarrow & \downarrow & \downarrow \\ \\+ & \cdot & 1 & 0 \end{array} ⋅↓++↓⋅0↓11↓0
则所得新的逻辑式即为 F F F的对偶式,记为 F ∗ F^{*} F∗
F = A ( B + C ‾ ) F ∗ = A + ( B C ‾ ) F=A(B+\overline{C}) \hspace{6em} F^{*}=A+(B\overline{C}) F=A(B+C)F∗=A+(BC)
F = A + B C ‾ F ∗ = A ( B + C ‾ ) F=A+B\overline{C} \hspace{6.8em} F^{*}=A(B+\overline{C}) F=A+BCF∗=A(B+C)
F = A B ‾ + A ( C + 0 ) F ∗ = ( A + B ‾ ) ( A + C ⋅ 1 ) F=A\overline{B}+A(C+0) \hspace{3.5em} F^{*}=(A+\overline{B})(A+C \cdot1) F=AB+A(C+0)F∗=(A+B)(A+C⋅1)
注意:对偶式和反演式的区别是对偶式不需要将原变量与反变量互换。
推论:若有两个逻辑表达式 F F F和 G G G相等,则各自的对偶式 F ∗ F^* F∗和 G ∗ G^* G∗也相等。
🕘 1.6 常用公式
-
A B + A B ‾ = A AB+A\overline{B}=A AB+AB=A(消去律)
证明: A B + A B ‾ = A ( B + B ‾ ) = A ⋅ 1 = A AB+A\overline{B}=A(B+\overline{B})=A \cdot 1 =A AB+AB=A(B+B)=A⋅1=A
对偶式: ( A + B ) ⋅ ( A + B ‾ ) = A (A+B)\cdot(A+\overline{B})=A (A+B)⋅(A+B)=A
该公式说明:两个乘积项相加时,若它们只有一个因子不同(如一项中有 B B B,另一项中有 B ‾ \overline{B} B ),而其余因子完全相同,则这两项可以合并成一项,且能消去那个不同的因子(即 B B B和 B ‾ \overline{B} B)。 -
A + A B = A A+AB=A A+AB=A(吸收律1)
证明: A + A B = A ( 1 + B ) = A ⋅ 1 = A A+AB=A(1+B)=A\cdot 1=A A+AB=A(1+B)=A⋅1=A
对偶式: A ( A + B ) = A A(A+B)=A A(A+B)=A
该公式说明:两个乘积项相加时,若其中一项
是另一项的因子
,则另一项是多余的。 -
A + A ‾ B = A + B A+\overline{A}B=A+B A+AB=A+B(吸收律2)
证明: A + A ‾ B = ( A + A ‾ ) ( A + B ) = 1 ⋅ ( A + B ) = A + B A+\overline{A}B=(A+\overline{A})(A+B)=1\cdot (A+B)=A+B A+AB=(A+A)(A+B)=1⋅(A+B)=A+B
对偶式: A ( A ‾ + B ) = A B A(\overline{A}+B)=AB A(A+B)=AB
该公式说明:两乘积项相加时,若其中一项的非
是另一项的因子
,则此因子是多余的。 -
A B + A ‾ C + B ‾ C = A B + A ‾ C AB+\overline{A}C+\overline{B}C=AB+\overline{A}C AB+AC+BC=AB+AC
证明: A B + A ˉ C + B C = A B + A ˉ C + ( A + A ˉ ) B C = A B + A ˉ C + A B C + A ˉ B C = A B ( 1 + C ) + A ˉ C ( 1 + B ) = A B + A ˉ C A B+\bar{A} C+B C \\ = A B+\bar{A} C+(A+\bar{A}) B C \\ = A B+\bar{A} C+A B C+\bar{A} B C \\ = A B(1+C)+\bar{A} C(1+B) \\ = A B+\bar{A} C AB+AˉC+BC=AB+AˉC+(A+Aˉ)BC=AB+AˉC+ABC+AˉBC=AB(1+C)+AˉC(1+B)=AB+AˉC
对偶关系: ( A + B ) ( A ˉ + C ) ( B + C ) = ( A + B ) ( A ˉ + C ) (A+B)(\bar{A}+C)(B+C) \\ =(A+B)(\bar{A}+C) (A+B)(Aˉ+C)(B+C)=(A+B)(Aˉ+C)
该公式说明:三个乘积项相加时,其中两个乘积项中,一项含有原变量
A A A,另一项含有反变量
A ‾ \overline{A} A,而这两项的其余因子
都是第三个乘积的因子
,则第三个乘积项是多余的。
推广: A B + A ‾ C + B C D E + . . . = A B + A ‾ C AB+\overline{A}C+BCDE+…=AB+\overline{A}C AB+AC+BCDE+...=AB+AC -
A B + A ‾ C + B ‾ C = ( A + C ) ( A ‾ + B ) AB+\overline{A}C+\overline{B}C=(A+C)(\overline{A}+B) AB+AC+BC=(A+C)(A+B)(交叉互换律)
证明:右边 = A A ‾ + A B + A ‾ C + B C = A B + A ‾ C + B C = =A\overline{A}+AB+\overline{A}C+BC=AB+\overline{A}C+BC= =AA+AB+AC+BC=AB+AC+BC=左边
对偶律: ( A + B ) ( A ‾ + B ) = A C + A ‾ B (A+B)(\overline{A}+B)=AC+\overline{A}B (A+B)(A+B)=AC+AB
例8:将2022个“1”异或起来得到的结果
答案:0
🕘 1.7 逻辑函数的标准形式
🕤 1.7.1 最小项表达式
-
定义:如两个变量 A 、 B A、B A、B可构成 4 4 4个最小项: A ˉ B ˉ 、 A ˉ B 、 A B ˉ 、 A B \bar{A} \bar{B}、\bar{A}B、A\bar{B}、AB AˉBˉ、AˉB、ABˉ、AB。最小项是一个包含所有输入的与项。n个变量的最小项有 2 n 2^n 2n个。
-
最小项编号:任一个最小项用 m i m_i mi表示, m m m表示最小项,下标 i i i为使该最小项为 1 1 1的变量取值所对应的等效十进制数。求最小项编号时,原变量为1,反变量为0。
eg:有最小项 A ˉ B C \bar{A}BC AˉBC ,要使该最小项为 1 1 1 ,A 、B 、C 的取值应为0 、1 、1,二进制数011所等效的十进制数为3 ,所以 A ˉ B C = m 3 \bar{A}BC=m_3 AˉBC=m3。 -
性质:
①、对于任意一个最小项,只有一组变量
的取值可以使其值为1
,其余均为0
;
②、任意两个
最小项 m i m_i mi 和 m j m_j mj 之积为0
( i ≠ j i≠j i=j);
③、 n n n个变量的所有最小项( 2 n 2^n 2n个)之和
为1
。 -
全部由最小项
相加
而构成的与-或表达式
称为最小项表达式,又称为标准与-或式,或标准积之和式。 -
书写形式:
对于逻辑函数 F = A B C + A B C ˉ + A ˉ B C + A ˉ B ˉ C F=A B C+A B \bar{C}+\bar{A} B C+\bar{A} \bar{B} C F=ABC+ABCˉ+AˉBC+AˉBˉC
可以简写成: F ( A , B , C ) = m 7 + m 6 + m 3 + m 1 \quad F(A, B, C)=m_{7}+m_{6}+m_{3}+m_{1} F(A,B,C)=m7+m6+m3+m1
或写成: F ( A , B , C ) = ∑ m ( 1 , 3 , 6 , 7 ) \quad F(A, B, C)=\sum_{m}(1,3,6,7) F(A,B,C)=∑m(1,3,6,7) -
方法:先变换成与-或表达式,然后将各与项中所缺的变量逐步
补齐
。任何逻辑函数都有惟一
的最小项表达式。
例9: 将 F = A B C + A ˉ C D + C ˉ D ˉ F=A B C+\bar{A} C D+\bar{C} \bar{D} F=ABC+AˉCD+CˉDˉ 展开成最小项表达式。
解: F = A B C + A ˉ C D + C ˉ D ˉ = A B C ( D + D ˉ ) + A ˉ ( B + B ˉ ) C D + ( A + A ˉ ) ( B + B ˉ ) C ˉ D ˉ = A B C D + A B C D ˉ + A ˉ B C D + A ˉ B ˉ C D + A B C ˉ D ˉ + A B ˉ C ˉ D ˉ + A ˉ B C ˉ D ˉ + A ˉ B ˉ C ˉ D ˉ \boldsymbol{F}=A B C+\bar{A} C D+\bar{C} \bar{D}= \\ A B C(D+\bar{D})+\bar{A}(B+\bar{B}) C D+(A+\bar{A})(B+\bar{B}) \bar{C} \bar{D}= \\ A B C D+A B C \bar{D}+\bar{A} B C D+\bar{A} \bar{B} C D+A B \bar{C} \bar{D}+A \bar{B} \bar{C} \bar{D}+ \\ \bar{A} B \bar{C} \bar{D}+\bar{A} \bar{B} \bar{C} \bar{D} F=ABC+AˉCD+CˉDˉ=ABC(D+Dˉ)+Aˉ(B+Bˉ)CD+(A+Aˉ)(B+Bˉ)CˉDˉ=ABCD+ABCDˉ+AˉBCD+AˉBˉCD+ABCˉDˉ+ABˉCˉDˉ+AˉBCˉDˉ+AˉBˉCˉDˉ
或写成:
F ( A , B , C , D ) = m 15 + m 14 + m 7 + m 3 + m 12 + m 8 + m 4 + m 0 F ( A , B , C , D ) = ∑ m ( 0 , 3 , 4 , 7 , 8 , 12 , 14 , 15 ) F(A, B, C, D)=m_{15}+m_{14}+m_{7}+m_{3}+m_{12}+m_{8}+m_{4}+m_{0} \\ F(A, B, C, D)=\sum_{m}(0,3,4,7,8,12,14,15) F(A,B,C,D)=m15+m14+m7+m3+m12+m8+m4+m0F(A,B,C,D)=∑m(0,3,4,7,8,12,14,15)
注:如果函数表达式不是一个简单的与-或表达式,则首先将其转换成与-或表达式,再展开成最小项表达式
🕤 1.7.2 最大项表达式
-
定义:如两个变量 A 、 B A、B A、B可构成 4 4 4个最大项: A ˉ + B ˉ 、 A ˉ + B 、 A + B ˉ 、 A + B \bar{A}+ \bar{B}、\bar{A}+B、A+\bar{B}、A+B Aˉ+Bˉ、Aˉ+B、A+Bˉ、A+B。最大项是一个包含所有输入的或项。n个变量的最大项有 2 n 2^n 2n个。
-
最大项编号:任一个最大项用 M i M_i Mi表示, M M M表示最大项,下标 i i i为使该最大项为 0 0 0的变量取值所对应的等效十进制数。求最大项编号时,原变量为0,反变量为1。
eg:有最大项 A ˉ + B + C \bar{A}+B+C Aˉ+B+C ,要使该最大项为 0 0 0 ,A 、B 、C 的取值应为1 、0 、0,二进制数100所等效的十进制数为4 ,所以 A ˉ + B + C = M 4 \bar{A}+B+C=M_4 Aˉ+B+C=M4。 -
性质:
①、对于任意一个最大项,只有一组变量
的取值可以使其值为0
,其余均为1
;
②、任意两个
最小项 M i M_i Mi 和 M j M_j Mj 之和为1
( i ≠ j i≠j i=j);
③、 n n n个变量的所有最大项( 2 n 2^n 2n个)之和
为0
。 -
全部由最小项
相加
而构成的与-或表达式
称为最小项表达式,又称为标准与-或式,或标准积之和式。 -
书写形式:
对于逻辑函数: F = ( A + B + C ) ( A + B + C ˉ ) ( A ˉ + B + C ) F=(A+B+C)(A+B+\bar{C})(\bar{A}+B+C) F=(A+B+C)(A+B+Cˉ)(Aˉ+B+C)
可以简写成: F ( A , B , C ) = M 0 ⋅ M 1 ⋅ M 4 F(A, B, C)=M_{0} \cdot M_{1} \cdot M_{4} F(A,B,C)=M0⋅M1⋅M4
或写成: F ( A , B , C ) = ∏ M ( 0 , 1 , 4 ) F(A, B, C)=\prod \ M(0,1,4) F(A,B,C)=∏ M(0,1,4) -
方法:反复利用分配律 A + B C = ( A + B ) ( A + C ) A+BC=(A+B)(A+C) A+BC=(A+B)(A+C)进行变换。任何逻辑函数都有
惟一
的最大项表达式。
例10: 将 F = A + A ˉ B C F=A+\bar{A} B C F=A+AˉBC 展开成最大项表达式。
解: F = A + A ˉ B C = A + B C = ( A + B ) ( A + C ) = ( A + B + C C ˉ ) ( A + B B ˉ + C ) = ( A + B + C ) ( A + B + C ˉ ) ( A + B ˉ + C ) = M 0 ⋅ M 1 ⋅ M 2 = ∏ M ( 0 , 1 , 2 ) F=A+\bar{A} B C=A+B C=(A+B)(A+C) \\ = (A+B+C \bar{C})(A+B \bar{B}+C) \\ = (A+B+C)(A+B+\bar{C})(A+\bar{B}+C) \\ = M_{0} \cdot M_{1} \cdot M_{2}= \prod \ M(0,1,2) F=A+AˉBC=A+BC=(A+B)(A+C)=(A+B+CCˉ)(A+BBˉ+C)=(A+B+C)(A+B+Cˉ)(A+Bˉ+C)=M0⋅M1⋅M2=∏ M(0,1,2)
🕤 1.7.3 最小项和最大项之间的关系
可以看出:编号相同的最小项和最大项具有互补
的特性,互为反函数。
🕤 1.7.4 两种标准形之间的相互转换
-
最小项表达式→最大项表达式
已知函数 F = ∑ m i \quad F=\sum m_{i} F=∑mi
由于 ∑ j = 0 2 n − 1 m j = 1 , F + F ˉ = 1 \sum_{j=0}^{2^{n}-1} m_{j}=1, F+\bar{F}=1 ∑j=02n−1mj=1,F+Fˉ=1
所以 F ˉ = ∑ k ≠ i m k , F = ∑ k ≠ i m k ‾ \bar{F}=\sum_{k \neq i} m_{k}, \quad F=\overline{\sum_{k \neq i} m_{k}} Fˉ=∑k=imk,F=∑k=imk
利用反演律可得: F = ∏ k ≠ i m k ‾ = ∏ k ≠ i M k \quad F=\prod_{k \neq i} \overline{m_{k}}=\prod_{k \neq i} M_{k} F=∏k=imk=∏k=iMk
例如: F ( A , B , C ) = ∑ m ( 0 , 1 , 2 , 5 , 7 ) = ∏ M ( 3 , 4 , 6 ) F(A, B, C)=\sum_{m}(0,1,2,5,7)=\prod M(3,4,6) F(A,B,C)=∑m(0,1,2,5,7)=∏M(3,4,6) -
最大项表达式→最小项表达式
已知函数 F = ∏ M i F=\prod M_{i} F=∏Mi
由于 ∏ j = 0 2 n − 1 M j = 0 , F ⋅ F ˉ = 0 \prod_{j=0}^{2^{n}-1} M_{j}=0, \quad F \cdot \bar{F}=0 ∏j=02n−1Mj=0,F⋅Fˉ=0
所以 F ˉ = ∏ k ≠ i M k , F = ∏ k ≠ i M k ‾ \bar{F}=\prod_{k \neq i} M_{k}, \quad F=\overline{\prod_{k \neq i} M_{k}} Fˉ=∏k=iMk,F=∏k=iMk
利用反演律可得: F = ∑ k ≠ i M k ‾ = ∑ k ≠ i m k \quad F=\sum_{k \neq i} \overline{M_{k}}=\sum_{k \neq i} m_{k} F=∑k=iMk=∑k=imk
例如: F ( A , B , C ) = ∏ M ( 0 , 1 , 2 , 4 , 5 ) = ∑ m ( 3 , 6 , 7 ) F(A, B, C)=\prod M(0,1,2,4,5)=\sum_{m}(3,6,7) F(A,B,C)=∏M(0,1,2,4,5)=∑m(3,6,7)
🕒 2. 逻辑函数
🕘 2.1 公式法(代数法)
公式化简法就是运用逻辑代数的基本公式和常用公式化简逻辑函数。
🕤 2.1.1 合并项法
利用公式 A B + A B ‾ = A AB+A\overline{B}=A AB+AB=A将两项合并为一项
例11:化简 A ( B C + B ˉ C ˉ ) + A ( B C ˉ + B ˉ C ) A(BC+\bar{B}\bar{C})+A(B\bar{C}+\bar{B}C) A(BC+BˉCˉ)+A(BCˉ+BˉC)
解:原式 = A B C + A B ˉ C ˉ + A B C ˉ + A B ˉ C = A B + A B ˉ = A =ABC+A\bar{B}\bar{C}+AB\bar{C}+A\bar{B}C=AB+A\bar{B}=A =ABC+ABˉCˉ+ABCˉ+ABˉC=AB+ABˉ=A
🕤 2.1.2 吸收法
利用公式 A + A B = A 及 A B + A ˉ C + B C = A B + A ˉ C A+AB=A及AB+\bar{A}C+BC=AB+\bar{A}C A+AB=A及AB+AˉC+BC=AB+AˉC,消去多余项
例12:化简 A C + A B ˉ C D + A B C + C ˉ D + A B D AC+A\bar{B}CD+ABC+\bar{C}D+ABD AC+ABˉCD+ABC+CˉD+ABD
解:原式 = A C + C ˉ D + A B D = A C + C ˉ D =AC+\bar{C}D+ABD=AC+\bar{C}D =AC+CˉD+ABD=AC+CˉD
🕤 2.1.3 消去法
利用公式 A + A ˉ B = A + B A+\bar{A}B=A+B A+AˉB=A+B,消去多余因子 A ˉ \bar{A} Aˉ
例12:化简 A B + A ˉ C + B ˉ C AB+\bar{A}C+\bar{B}C AB+AˉC+BˉC
解:原式 = A B + ( A ˉ + B ˉ ) C = A B + A B ‾ C = A B + C =AB+(\bar{A}+\bar{B})C=AB+\overline{AB}C=AB+C =AB+(Aˉ+Bˉ)C=AB+ABC=AB+C
🕤 2.1.4 配项法
为了求得最简结果,有时可以将某一乘积项乘以 ( A + A ˉ ) (A+\bar{A}) (A+Aˉ),将一项展开为两项,或者利用式 A B + A ‾ C + B ‾ C = A B + A ‾ C AB+\overline{A}C+\overline{B}C=AB+\overline{A}C AB+AC+BC=AB+AC增加 B C BC BC项,再与其他乘积项进行合并化简,以达到求得最简结果的目的。
例13:化简 A B ‾ + B C ‾ + B ‾ C + A ‾ B A\overline{B}+B\overline{C}+\overline{B}C+\overline{A}B AB+BC+BC+AB
解:原式 = A B ˉ + B C ˉ + B ˉ C ( A + A ˉ ) + A ˉ B ( C + C ˉ ) = A B ˉ + B C ˉ + A B ˉ C + A ˉ B ˉ C + A ˉ B C + A ˉ B C ˉ = A B ˉ + B C ˉ + A ˉ C =A \bar{B}+B \bar{C}+\bar{B} C(A+\bar{A})+\bar{A} B(C+\bar{C})=\\ A \bar{B}+B \bar{C}+A \bar{B} C+\bar{A} \bar{B} C+\bar{A} B C+ \bar{A} B \bar{C}=\\ A \bar{B}+B \bar{C}+\bar{A} C =ABˉ+BCˉ+BˉC(A+Aˉ)+AˉB(C+Cˉ)=ABˉ+BCˉ+ABˉC+AˉBˉC+AˉBC+AˉBCˉ=ABˉ+BCˉ+AˉC
例14:化简 F = A B + A C ˉ + B ˉ C + B ˉ D + B D ˉ + B C ˉ + A D E ( F + G ) \boldsymbol{F}=A B+A \bar{C}+\bar{B} C+\bar{B} D+B \bar{D}+B \bar{C}+A D E(F+G) F=AB+ACˉ+BˉC+BˉD+BDˉ+BCˉ+ADE(F+G)
解:原式 = A ( B + C ˉ ) + B ˉ C + B ˉ D + B D ˉ + B C ˉ + A D E ( F + G ) = A B ˉ C ‾ + B ˉ C + B ˉ D + B D ˉ + B C ˉ + A D E ( F + G ) = ( 反演律 ) A + B ˉ C + B ˉ D + B D ˉ + B C ˉ + A D E ( F + G ) = ( 吸收 ) A + B ˉ C + B ˉ D + B D ˉ + B C ˉ + C D ˉ = ( 吸收、配项 ) A + B ˉ D + B C ˉ + C D ˉ ( 吸收 ) ={\color{orange}A(B+\bar{C})}+\bar{B} C+\bar{B} D+B \bar{D}+B \bar{C}+A D E(F+G)=\\ {\color{orange}A \overline{\bar{B} C}}+\bar{B} C+\bar{B} D+B \bar{D}+B \bar{C}+A D E(F+G)= \hspace{6.4em}\text { ( 反演律 })\\ A+{\color{blue}\bar{B} C}+\bar{B} D+{\color{blue}B \bar{D}}+B \bar{C}+A D E(F+G)=\hspace{9em}\text { ( 吸收 ) }\\ A+{\color{green}\bar{B} C}+\bar{B} D+{\color{green}B \bar{D}}+B \bar{C}+{\color{blue}C \bar{D}}=\hspace{10.4em}\text { ( 吸收、配项 ) }\\ A+\bar{B} D+B \bar{C}+C \bar{D} \hspace{20.5em}\text { ( 吸收 ) } =A(B+Cˉ)+BˉC+BˉD+BDˉ+BCˉ+ADE(F+G)=ABˉC+BˉC+BˉD+BDˉ+BCˉ+ADE(F+G)= ( 反演律 )A+BˉC+BˉD+BDˉ+BCˉ+ADE(F+G)= ( 吸收 ) A+BˉC+BˉD+BDˉ+BCˉ+CDˉ= ( 吸收、配项 ) A+BˉD+BCˉ+CDˉ ( 吸收 )
例15:化简 F = A ( A + B ) ( A ˉ + C ) ( B + D ) ( A ˉ + C + E + F ) ( B ˉ + F ) ( D + E + F ) \boldsymbol{F}=A(A+B)(\bar{A}+C)(B+D)(\bar{A}+C+E+F) (\bar{B}+F)(D+E+F) F=A(A+B)(Aˉ+C)(B+D)(Aˉ+C+E+F)(Bˉ+F)(D+E+F)
方法一:利用各公式的对偶式进行化简
解:原式 = A ( A ˉ + C ) ( B + D ) ( B ˉ + F ) = A C ( B + D ) ( B ˉ + F ) =A(\bar{A}+C)(B+D)(\bar{B}+F)\\ =A C(B+D)(\bar{B}+F) =A(Aˉ+C)(B+D)(Bˉ+F)=AC(B+D)(Bˉ+F)
方法二:将或-与表达式转换成它的对偶与-或式,先对与-或对偶式进行化简,再求化简后的与-或式的对偶式。
解: F ∗ = A + A B + A ˉ C + B D + A ˉ C E F + B ˉ F + D E F = A + A ˉ C + B D + B ˉ F = A + C + B D + B ˉ F \boldsymbol{F}^{*}=A+A B+\bar{A} C+B D+\bar{A} C E F+\bar{B} F+D E F\\ =A+\bar{A} C+B D+\bar{B} F\\ =A+C+B D+\bar{B} F F∗=A+AB+AˉC+BD+AˉCEF+BˉF+DEF=A+AˉC+BD+BˉF=A+C+BD+BˉF
求 F ∗ \boldsymbol{F}^{*} F∗的对偶式
F ∗ = A C ( B + D ) ( B ˉ + F ) \boldsymbol{F}^{*}=A C(B+D)(\bar{B}+F) F∗=AC(B+D)(Bˉ+F)
归纳:利用公式法化简逻辑函数,要求熟练掌握对公式的运用,技巧性较强。判断化简后的结果是否最简有一定的难度。
🕘 2.2 图解法(卡诺图法)
🕤 2.2.1 什么是卡诺图
- 卡诺图就是将逻辑变量分成两组,每一组变量取值组合按循环码的规则排列所构成的方格图,图中的每一个方格对应着逻辑变量的一个最小项。
- 所谓循环码,是指相邻两组编码之间只有一个变量值不同的编码。
🕤 2.2.2 用卡诺图表示逻辑函数的方法
依据:由于任意一个 n n n变量的逻辑函数都可以变换成最小项表达式,而 n n n变量的卡诺图包含 n n n个变量的所有最小项,所以 n n n变量的卡诺图可以表示 n n n变量的任意一个逻辑函数。
方法:逻辑函数包含有哪几个最小项,就在卡诺图相对应的方格内填1
,其余各方格填0
。
例如:逻辑函数 F ( A , B , C ) = ∑ m ( 3 , 5 , 6 , 7 ) \boldsymbol{F}(A,B,C)=\sum_{m}(3,5,6,7) F(A,B,C)=∑m(3,5,6,7),可在3
变量卡诺图对应的 m 3 , m 5 , m 6 , m 7 m_3,m_5,m_6,m_7 m3,m5,m6,m7方格内填1
,其余方格填0
。
填1
的方格表示当函数的变量取值与方格所对应的变量取值相同时,逻辑函数的值为1
。
如果逻辑函数不是最小项表达式的形式,通常采用以下两种方法填写卡诺图:
- (1) 将逻辑函数变换成最小项表达式的形式。
例如: F = A B C ˉ + A ˉ B D + A C = A B C ˉ D ˉ + A B C ˉ D + A ˉ B C ˉ D + A ˉ B C D + A B ˉ C D ˉ + A B ˉ C D + A B C D ˉ + A B C D = ∑ m ( 12 , 13 , 5 , 7 , 10 , 11 , 14 , 15 ) \boldsymbol{F}=A B \bar{C}+\bar{A} B D+A C\\ =A B \bar{C} \bar{D}+A B \bar{C} D+\bar{A} B \bar{C} D+\bar{A} B C D +A \bar{B} C \bar{D}+A \bar{B} C D+A B C \bar{D}+A B C D\\ =\sum_{m}(12,13,5,7,10, 11 ,14 ,15) F=ABCˉ+AˉBD+AC=ABCˉDˉ+ABCˉD+AˉBCˉD+AˉBCD+ABˉCDˉ+ABˉCD+ABCDˉ+ABCD=∑m(12,13,5,7,10,11,14,15)
- (2) 观察法
对于某乘积项,找出所有使得该乘积项为1
的变量取值情况,则在这些变量取值所对应的方格内都填1
,就是该乘积项的卡诺图表示。
例如: F = A ˉ B C ˉ + C ˉ D + B D \boldsymbol{F}=\bar{A}B\bar{C}+\bar{C}D+B D F=AˉBCˉ+CˉD+BD
对于乘积项 A ˉ B C ˉ \bar{A}B\bar{C} AˉBCˉ,因为缺少变量D,只要变量A、B、C分别取值0、1、0即可,不论D取0或1,都成立,因此当变量取值为0100
和0101
时,乘积项的值为1
,所以在卡诺图对应的 m 4 、 m 5 m_4、m_5 m4、m5方格内填1
。
对于乘积项 B D BD BD,只有当变量 B B B和 D D D都为1
时,乘积项的值才为1
,所以在满足该条件的 m 5 、 m 7 、 m 13 、 m 15 m_5、m_7 、m_{13} 、m_{15} m5、m7、m13、m15四个方格内填1
。其余乘积项按相同方法处理。
🕤 2.2.3 利用卡诺图合并最小项的规律
依据:在卡诺图中,处于相邻位置的两个最小项都只有一个变量表现出取值0和1的差别,根据公式 A B + A B ˉ = A AB+A\bar{B}=A AB+ABˉ=A,这两个最小项就可以合并为一项。
- (1)
2
个相邻项的合并
2
个相邻的1格
圈在一起,产生的合并项由圈内没有0、1
变化的那些变量组成,消去了一
个变量。
- (2)
4
个相邻项的合并
4
个相邻的1格
圈在一起,有两个变量表现出0、1
的变化,因此合并项由n-2
个变量组成。
- (3)
8
个相邻项的合并
8
个相邻的1格
圈在一起,有三个变量表现出0、1
的变化,因此合并项由n-3
个变量组成。
- (4) 关于
5
变量的卡诺图
对于5变量以上的卡诺图,某些相邻1格有时不是十分直观地可以辨认,因此一般不采用卡诺图进行化简。
归纳:
① 在卡诺图中合并最小项,将图中相邻1格
加圈标志,每个圈内必须包含 2 i 2^i 2i个相邻1格
。
② 在n变量的卡诺图中, 2 i 2^i 2i个相邻1格圈在一起时,圈内有 i i i个变量发生0、1
变化,合并后的乘积项由 n − i n-i n−i个没有发生0、1
变化的变量组成。
🕤 2.2.4 利用卡诺图化简逻辑函数
根据卡诺图合并最小项的规律,用卡诺图化简逻辑函数时,函数化简后乘积项的数目等于合并圈的数目,每个乘积项所含变量因子的多少,取决于合并圈的大小。
主要项:在卡诺图中,把 2 i 2^i 2i个相邻1格
进行合并,如果合并圈不能再扩大,这样圈得的合并乘积项称为主要项。显然,主要项的圈不被更大的圈所覆盖。
必要项:如果主要项圈中至少有一个“特定”的1格没有被其他主要项所覆盖,这个主要项称为必要项或实质主要项。
多余项:如果一个主要项所包含的1格都被其他的主要项圈所覆盖,这个主要项就是多余项(冗余项)。
用卡诺图化简逻辑函数的步骤:
-
将函数变换成最小项表达式的形式;(也可直接填写)
-
填写卡诺图;(用卡诺图表示逻辑函数)
-
按卡诺图合并最小项的规律画包围圈;
(1)圈出所有没有相邻项的孤立1格主要项;
(2)找出只有一种合并可能的1格,构成主要项;
(3)对余下没有被覆盖的1格,选择一种合并方式加圈合并,直至所有1格都至少被圈一次,而且圈数最少。 -
对每一个合并圈进行化简,各合并乘积项之和即为逻辑函数的化简结果。
例16:化简函数 F ( a , b , c , d ) = ∑ m ( 0 , 2 , 5 , 6 , 7 , 9 , 10 , 14 , 15 ) \boldsymbol{F}(a, b, c, d)=\sum_{m}(0,2,5,6,7,9,10,14,15) F(a,b,c,d)=∑m(0,2,5,6,7,9,10,14,15)
解:
第一步:填写卡诺图(为了叙述方便,这里填写最小项的编号,平常应该在对应最小项方格中填1
) 。
第二步:画包围圈。
第三步:化简包围圈。
F ( a , b , c , d ) = ∑ m ( 9 ) + ∑ m ( 0 , 2 ) + ∑ m ( 5 , 7 ) + ∑ m ( 2 , 6 , 10 , 14 ) + ∑ m ( 6 , 7 , 14 , 15 ) = a b ˉ c ˉ d + a ˉ b ˉ d ˉ + a ˉ b d + c d ˉ + b c \boldsymbol{F}(a, b, c, d)=\sum_{m}(9)+\sum_{m}(0,2)+\\ \sum_{m}(5,7)+\sum_{m}(2,6,10,14)+\\ \sum_{m}(6,7,14,15)\\ =a \bar{b} \bar{c} d+\bar{a} \bar{b} \bar{d}+\bar{a} b d+c \bar{d}+b c F(a,b,c,d)=∑m(9)+∑m(0,2)+∑m(5,7)+∑m(2,6,10,14)+∑m(6,7,14,15)=abˉcˉd+aˉbˉdˉ+aˉbd+cdˉ+bc
例17:化简函数 F ( a , b , c , d ) = ∑ m ( 0 , 2 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 14 , 15 ) \boldsymbol{F}(a, b, c, d)=\sum_{m}(0,2,5,6,7,8,9,10,11,14,15) F(a,b,c,d)=∑m(0,2,5,6,7,8,9,10,11,14,15)
解:
填写卡诺图,画出只有一种圈法的包围圈。如图(a)。
余下的三个最小项有两种处理方法,如图(b)和图( c )。
显然图(b)中的圈法对应的圈数最少。
化简结果为: F ( a , b , c , d ) = ∑ m ( 5 , 7 ) + ∑ m ( 0 , 2 , 8 , 10 ) + ∑ m ( 8 , 9 , 10 , 11 ) + ∑ m ( 6 , 7 , 14 , 15 ) = a ˉ b d + b ˉ d ˉ + a b ˉ + b c \boldsymbol{F}(a, b, c, d)=\sum m(5,7)+\sum _{m}(0,2,8,10)+\\ \sum_{m}(8,9,10,11)+\sum_{m}(6,7,14,15)\\ =\bar{a} b d+\bar{b} \bar{d}+a \bar{b}+b c F(a,b,c,d)=∑m(5,7)+∑m(0,2,8,10)+∑m(8,9,10,11)+∑m(6,7,14,15)=aˉbd+bˉdˉ+abˉ+bc
如果合并所有的0格,即可得到函数的最简或-与式,也称为圈0法。
圈0法的方法和步骤与圈1法完全相同,不同的是,由 2 i 2^i 2i个0
格构成的圈,由圈内取值不变的变量相或
来表示(以原变量表示取值0,以反变量表示取值1),所有的或项
再相与
,即构成最简或-与式。
例18:求函数 F ( a , b , c , d ) = ∑ m ( 0 , 2 , 3 , 5 , 7 , 8 , 10 , 11 , 13 ) \boldsymbol{F}(a, b, c, d)=\sum_{m}(0,2,3,5,7,8,10,11,13) F(a,b,c,d)=∑m(0,2,3,5,7,8,10,11,13)的最简或-与式
解:填写卡诺图,画包围圈,化简。
∏ M ( 1 , 9 ) = b + c + d ˉ ∏ M ( 14 , 15 ) = a ˉ + b ˉ + c ˉ ∏ M ( 4 , 6 , 12 , 14 ) = b ˉ + d \prod M(1,9)=b+c+\bar{d} \\ \prod M(14,15)=\bar{a}+\bar{b}+\bar{c} \\ \prod M(4,6,12,14)=\bar{b}+d ∏M(1,9)=b+c+dˉ∏M(14,15)=aˉ+bˉ+cˉ∏M(4,6,12,14)=bˉ+d
通过函数表达式的变换,如:
F = ( b + c + d ˉ ) ( a ˉ + b ˉ + c ˉ ) ( b ˉ + d ) = b ˉ c ˉ d ‾ ⋅ a b c ‾ ⋅ b d ˉ ( 与非-与式 ) = b ˉ c ˉ d + a b c + b d ˉ ‾ ( 与-或非式 ) F=(b+c+\bar{d})(\bar{a}+\bar{b}+\bar{c})(\bar{b}+d) \\ =\overline{\bar{b} \bar{c} d} \cdot \overline{a b c} \cdot b \bar{d} \hspace{6.4em}\text { ( 与非-与式 ) }\\ =\overline{\bar{b} \bar{c} d+a b c+b \bar{d}}\hspace{5.4em}\text { ( 与-或非式 ) } F=(b+c+dˉ)(aˉ+bˉ+cˉ)(bˉ+d)=bˉcˉd⋅abc⋅bdˉ ( 与非–与式 ) =bˉcˉd+abc+bdˉ ( 与–或非式 )
🕤 2.2.5 任意项的使用
- 任意项是指在一个逻辑函数中,变量的某些取值组合不会出现,或者函数在变量的某些取值组合时输出不确定,可能为0,也可能为1,这样的变量的取值组合(最小项)称为任意项。
- 具有任意项的逻辑函数称为非完全描述的逻辑函数。对于非完全描述的逻辑函数,合理地利用任意项,能使逻辑函数的表达式进一步化简。
- 在卡诺图中,任意项格可以作为
1格
,也可以作为0格
。具体是作为1格还是作为0格,以有利于得到最简
为前提。 - 所有的任意项用 ∑ d ( m i ) \sum{d(m_i)} ∑d(mi)表示,在卡诺图中,任意项格用
×
表示。
例19:化简 F ( a , b , c , d ) = ∑ m ( 0 , 2 , 5 , 9 , 15 ) + ∑ m ( 6 , 7 , 8 , 10 , 12 , 13 ) \boldsymbol{F}(a, b, c, d)=\sum_{m}(0,2,5,9,15)+\sum_{m}(6,7,8,10,12,13) F(a,b,c,d)=∑m(0,2,5,9,15)+∑m(6,7,8,10,12,13)
如果不利用任意项,即将任意项全部视作0
格,如图2-2-16(a),化简结果为 F = a ˉ b ˉ c ˉ + a ˉ b c ˉ d + a b c d + a b ˉ c ˉ d F=\bar{a}\bar{b}\bar{c}+\bar{a}b\bar{c}d+abcd+a\bar{b}\bar{c}d F=aˉbˉcˉ+aˉbcˉd+abcd+abˉcˉd 若合理利用任意项,对有利于化简的任意项作1格
处理,如图2-2-16(b) 中任意项 m 7 、 m 8 、 m 10 、 m 12 、 m 13 m_7、m_8、m_{10}、m_{12}、m_{13} m7、m8、m10、m12、m13,不利于化简的 m 6 m_6 m6作为0格
处理,则得到 F = b ˉ d ˉ + a c ˉ + b d F=\bar{b}\bar{d}+a\bar{c}+bd F=bˉdˉ+acˉ+bd 对于非完全描述逻辑函数的化简,凡是1格
都必须加圈覆盖,而任意格×
则可以作为1格加圈合并
,也可作为0格不加圈
。最后必须指出,化简过程中,已对任意项赋予了确定的输出值。
🕒 3. 练习题
-
列出下述问题的真值表,并写出逻辑表达式:有a、b、c三个输入信号,当三个输入信号出现奇数个
1
时,输出为1
,其余情况下,输出为0
。
答案:
a b c Y 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 0 0 1 1 0 1 0 1 1 0 0 1 1 1 1 \begin{array}{c|c|c|c} \hline a & b & c & Y \\ \hline 0 & 0 & 0 & 0 \\ \hline 0 & 0 & 1 & 1 \\ \hline 0 & 1 & 0 & 1 \\ \hline 0 & 1 & 1 & 0 \\ \hline 1 & 0 & 0 & 1 \\ \hline 1 & 0 & 1 & 0 \\ \hline 1 & 1 & 0 & 0 \\ \hline 1 & 1 & 1 & 1 \\ \hline \end{array} a00001111b00110011c01010101Y01101001 -
直接写出下列各函数的反函数表达式及对偶函数表达式:
F = A B + C D ‾ + B C ‾ + D ˉ + C ˉ E + B + E ‾ ‾ F=A B+\overline{C D}+\overline{B C}+\overline{\bar{D}+\bar{C} E+\overline{B+E}} F=AB+CD+BC+Dˉ+CˉE+B+E
答案:
反函数: F ˉ = ( A ˉ + B ˉ ) ( C ˉ + D ˉ ) ‾ ( B ˉ + C ˉ ) ‾ D ( C + E ˉ ) B ˉ E ˉ ‾ ‾ \bar{F}=(\bar{A}+\bar{B}) \overline{(\bar{C}+\bar{D})} \ \overline{(\bar{B}+\bar{C})} \overline{D(C+\bar{E}) \overline{\bar{B} \bar{E}}} Fˉ=(Aˉ+Bˉ)(Cˉ+Dˉ) (Bˉ+Cˉ)D(C+Eˉ)BˉEˉ
对偶式: F ∗ = ( A + B ) ( C + D ) ‾ ( B + C ) ‾ D ˉ ( C ˉ + E ) B E ‾ ‾ F^{*}=(A+B) \overline{(C+D)} \ \overline{(B+C)} \overline{\bar{D}(\bar{C}+E) \overline{B E}} F∗=(A+B)(C+D) (B+C)Dˉ(Cˉ+E)BE -
用公式法证明下列等式:
A ˉ C ˉ + A ˉ B ˉ + A ˉ C ˉ D ˉ + B C = A ˉ + B C \bar{A} \bar{C}+\bar{A} \bar{B}+\bar{A} \bar{C} \bar{D}+B C=\bar{A}+B C AˉCˉ+AˉBˉ+AˉCˉDˉ+BC=Aˉ+BC
答案:
左 = ( A ˉ C ˉ + A ˉ C ˉ D ˉ ) + A ˉ B ˉ + B C = A ˉ C ˉ + A ˉ B ˉ + B C = A ˉ ( C ˉ + B ˉ ) + B C = A ˉ B C ‾ + B C = A ˉ + B C = 右 \begin{aligned} \text { 左 } &=(\bar{A} \bar{C}+\bar{A} \bar{C} \bar{D})+\bar{A} \bar{B}+B C=\bar{A} \bar{C}+\bar{A} \bar{B}+B C \\ &=\bar{A}(\bar{C}+\bar{B})+B C=\bar{A} \ \overline{B C}+B C=\bar{A}+B C=\text { 右 } \end{aligned} 左 =(AˉCˉ+AˉCˉDˉ)+AˉBˉ+BC=AˉCˉ+AˉBˉ+BC=Aˉ(Cˉ+Bˉ)+BC=Aˉ BC+BC=Aˉ+BC= 右 -
写出下列式中 F F F和它们的对偶式、反演式的最小项表达式:
F = A B ˉ + A ˉ B + B C F=A \bar{B}+\bar{A} B+B C F=ABˉ+AˉB+BC
答案:
F ( A , B , C ) = A B ˉ C ˉ + A B ˉ C + A ˉ B C ˉ + A ˉ B C + A B C = ∑ m ( 2 , 3 , 4 , 5 , 7 ) F(A, B, C)=A \bar{B} \bar{C}+A \bar{B} C+\bar{A} B \bar{C}+\bar{A} B C+A B C=\sum m(2,3,4,5,7) F(A,B,C)=ABˉCˉ+ABˉC+AˉBCˉ+AˉBC+ABC=∑m(2,3,4,5,7)
反演式: F ˉ ( A , B , C ) = ∑ m ( 0 , 1 , 6 ) \bar{F}(A, B, C)=\sum m(0,1,6) Fˉ(A,B,C)=∑m(0,1,6)
对偶式: F ∗ ( A , B , C ) = ∑ m ( 7 , 6 , 1 ) F^{*}(A, B, C)=\sum m(7,6,1) F∗(A,B,C)=∑m(7,6,1) -
用公式法化简下列式子:
F = A C + B ˉ C ‾ + B ( A C ˉ + A ˉ C ) ‾ F=\overline{\overline{A C+\bar{B} C}+B(A \bar{C}+\bar{A} C)} F=AC+BˉC+B(ACˉ+AˉC)
标答:
F = ( A C + B ˉ C ) ( B ˉ + A C + A ˉ C ˉ ) = A C ( A C + B ˉ + A ˉ C ˉ ) + B ˉ C ( B ˉ C + B ˉ C ˉ + A C + A ˉ C ˉ ) = A C + B ˉ C [ 公 式 : A ( A + B ) = A ] F =(A C+\bar{B} C)(\bar{B}+A C+\bar{A} \bar{C}) \\ =A C(A C+\bar{B}+\bar{A} \bar{C})+\bar{B} C(\bar{B} C+\bar{B} \bar{C}+A C+\bar{A} \bar{C}) \\ =A C+\bar{B} C \hspace{20em} [公式: A(A+B)=A] F=(AC+BˉC)(Bˉ+AC+AˉCˉ)=AC(AC+Bˉ+AˉCˉ)+BˉC(BˉC+BˉCˉ+AC+AˉCˉ)=AC+BˉC[公式:A(A+B)=A]
答案:
F = ( A C + B ˉ C ) ⋅ B ( A C ˉ + A ˉ C ) ‾ = ( A C + B ˉ C ) ⋅ ( B ˉ + A C ˉ + A ˉ C ‾ ) = ( A C + B ˉ C ) ⋅ ( B ˉ + A ˉ C ˉ + A C ) = A B C + A C + B ˉ C + A B ˉ C = A C + B ˉ C \begin{aligned} F &=(A C+\bar{B} C) \cdot \overline{B(A \bar{C}+\bar{A} C)} \\ &=(A C+\bar{B} C) \cdot(\bar{B}+\overline{A \bar{C}+\bar{A} C}) \\ &=(A C+\bar{B} C) \cdot(\bar{B}+\bar{A} \bar{C}+A C) \\ &=A B C+A C+\bar{B} C+A \bar{B} C \\ &=A C+\bar{B} C \end{aligned} F=(AC+BˉC)⋅B(ACˉ+AˉC)=(AC+BˉC)⋅(Bˉ+ACˉ+AˉC)=(AC+BˉC)⋅(Bˉ+AˉCˉ+AC)=ABC+AC+BˉC+ABˉC=AC+BˉC -
用图解法化简下列各函数:
(1) F ( a , b , c , d ) = ∏ M ( 5 , 7 , 13 , 15 ) F(a, b, c, d)=\prod M(5,7,13,15) F(a,b,c,d)=∏M(5,7,13,15);
(2) F ( A , B , C , D , E ) = ∑ m ( 0 , 2 , 4 , 9 , 11 , 14 , 15 , 16 , 17 , 23 , 25 , 29 , 31 ) F(A, B, C, D, E)=\sum m(0,2,4,9,11,14,15,16,17,23,25,29,31) F(A,B,C,D,E)=∑m(0,2,4,9,11,14,15,16,17,23,25,29,31);
(3) F ( a , b , c , d , e ) = ∏ M ( 0 , 2 , 4 , 9 , 11 , 14 , 15 , 16 , 17 , 23 , 25 , 29 , 31 ) F(a, b, c, d, e)=\prod M(0,2,4,9,11,14,15,16,17,23,25,29,31) F(a,b,c,d,e)=∏M(0,2,4,9,11,14,15,16,17,23,25,29,31);
答案:(1): F = b ˉ + d ˉ F=\bar{b}+\bar{d} F=bˉ+dˉ
(2)本题最简与-或式答案唯一,用Q-M法可得同样结果,共含7个乘积项,如下式所示: F = A ˉ B ˉ D ˉ ⋅ E ˉ + A ˉ ⋅ B ˉ ⋅ C ˉ ⋅ E ˉ + A ˉ B C ˉ E + A ˉ B C D + A B ˉ ⋅ C ˉ ⋅ D ˉ + A B D ˉ E + A C D E F=\bar{A} \bar{B} \bar{D} \cdot \bar{E}+\bar{A} \cdot \bar{B} \cdot \bar{C} \cdot \bar{E}+\bar{A} B \bar{C} E+\bar{A} B C D+A \bar{B} \cdot \bar{C} \cdot \bar{D}+A B \bar{D} E+A C D E F=AˉBˉDˉ⋅Eˉ+Aˉ⋅Bˉ⋅Cˉ⋅Eˉ+AˉBCˉE+AˉBCD+ABˉ⋅Cˉ⋅Dˉ+ABDˉE+ACDE
(3)首先分析本题同题(2)的区别:题(2)是最小项之和式,而本题是最大项之积式,但两题函数的所有标准项的下标号码完全一样,项数也相同,即它们互为反函数。因此利用反演规则就可得到答案,如下式所示: F = ( a + b + d + e ) ( a + b + c + e ) ( a + b ˉ + c + e ˉ ) ( a + b ˉ + c ˉ + d ˉ ) ( a ˉ + b + c ˉ + d ) ( a ˉ + b ˉ + d + e ˉ ) ( a ˉ + c ˉ + d ˉ + e ˉ ) F=(a+b+d+e)(a+b+c+e)(a+\bar{b}+c+\bar{e})(a+\bar{b}+\bar{c}+\bar{d})(\bar{a}+b+\bar{c}+d)(\bar{a}+\bar{b}+d+\bar{e})(\bar{a}+\bar{c}+\bar{d}+\bar{e}) F=(a+b+d+e)(a+b+c+e)(a+bˉ+c+eˉ)(a+bˉ+cˉ+dˉ)(aˉ+b+cˉ+d)(aˉ+bˉ+d+eˉ)(aˉ+cˉ+dˉ+eˉ)
这篇文章从国庆拖到现在,没有考虑好应考性和知识全面性,本期开始停更,愿天堂没有图表和Markdown🙏🙏🙏
OK,以上就是本期知识点“逻辑函数及其简化”的知识啦~~ ,感谢友友们的阅读。后续还会继续更新,欢迎持续关注哟📌~
💫如果有错误❌,欢迎批评指正呀👀~让我们一起相互进步🚀
🎉如果觉得收获满满,可以点点赞👍支持一下哟~
今天的文章【数字逻辑】——逻辑函数及其简化(学习笔记)分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/82735.html