逻辑函数式的逐次代入化简法.docx
《逻辑函数式的逐次代入化简法.docx》由会员分享,可在线阅读,更多相关《逻辑函数式的逐次代入化简法.docx(6页珍藏版)》请在冰豆网上搜索。
逻辑函数式的逐次代入化简法
逻辑函数式的逐次代入化简法
摘要:
对于任何一个逻辑函数式,先任选某个变量Ai,分别令其为1与0,并计算出相应结果(分别记为f1和f2),然后合并得出结果Af1+Aif2。
如果这个结果还不是最简形式,再选取另外一个逻辑变量Aj,重复上述过程,通过这种逻辑变量的逐次代入可以求出最简结果。
若其中某个因子不论为何值(0或1),均可得到相等的其余各项的和,则该因子及其非项都是多余的。
在这个结论及其证明的基础上,得出两个推论,可用于对任一逻辑函数式进行化简。
这种方法既有简单统一的固定步骤,又不需要掌握更多的常用公式,集中了公式法、卡诺图法的优点。
关键词:
逻辑函数式;逐次代入;化简;方法
0引言
在数字电路的分析与设计中,往往要进行逻辑函数式的化简,常用的化简方法有公式化简法、卡诺图化简法等。
公式化简法的原理就是反复使用逻辑代数的基本公式和常用公式消去逻辑函数式中多余的乘积项和多余的因子,以求得最简的逻辑函数式。
这种方法没有固定的步骤,同时需要熟练掌握逻辑代数的基本公式和常用公式,初学者在化简时容易出错,或者得不到最简形式。
卡诺图化简法的原理就是先把逻辑函数式转化成最小项的表示形式,然后作出卡诺图,再从卡诺图上直观地找出那些具有相邻性的最小项并将其合并化简P[1]P。
这种化简方法一般都有固定的步骤,比较容易掌握,但要求在做出卡诺图之前将待化简函数式转换成最小项表示形式,当逻辑变量较多时也极易出错。
可见上述两种方法各有利弊,如果找到一种化简方法,既有简单统一的固定步骤,又不需要掌握更多的常用公式,就可以将上述两种化简方法的优点集中起来。
经研究,发现对于任一逻辑函数式,可以通过逐次代入各个逻辑变量取值的方法进行化简。
1逐次代入化简法的内容及证明
逻辑函数式的逐次代入化简化法的基本内容是:
对于任何含有n个逻辑变量AB{1B}、AB{2B}…AB{iB}…AB{nB}的逻辑函数式f(AB{1B}、AB{2B}…AB{iB}…AB{nB})(以下简称f),任取一个逻辑变量AB{iB},若
当AB{iB}=1时,f=fB{1B}(AB{1B}、AB{2B}…AB{i-1B},AB{i+1B}…AB{nB})(以下简称fB{1B});
当AB{iB}=0时,f=fB{2B}(AB{1B}、AB{2B}…AB{i-1B},AB{i+1B}…AB{nB})(以下简称fB{2B});
则f=AB{iB}fB{1B}+AifB2B。
上述结论的证明很简单:
当AB{Ib}=1时,
f=fB1
=1•fB{1B}+0•fB2
=AB{iB}fB{1B}+AifB{2B};
当AB{iB}=0时,
f=fB{2B}
=0•fB{1B}+1•fB{2B}
=AB{iB}fB{1B}+AifB{2B};
当AB{iB}取1或0,即AB{iB}取任意值时,均有f(AB{1B}、AB{2B}…AB{iB}…AB{nB})=AB{iB}fB{1B}(AB{1B}、AB{2B}…AB{i-1B},AB{i+1B}…AB{nB})+AifB{2B}(AB{1B}、AB{2B}…AB{i-1B},AB{i+1B}…AB{nB})成立。
利用上述结论对逻辑函数式进行化简时,一般需对各个逻辑变量进行取值代入,逐次化简。
2三个推论
在上述结论中,若fB{1B}=fB{2B}=0,则有f=AB{iB}•0+Ai•0=0;同理,若fB{1B}=fB{2B}=1,则有f=ABiB•1+Ai•1=1。
这不难理解,因为AB{iB}为逻辑函数式f中的任一变量,无论其取何值均有fB{1B}=fB{2B}=0(=1),逻辑函数式f必然恒为0
(1)。
还有另一种情况,若AB{iB}=1(或0)时,fB{1B}=1(或fB{2B}=0);AB{iB}=0(或1)时,fB{2B}=0(或fB{1B}=1),则有f=AB{iB}(或f=Ai)。
由此,可以得出两个推论:
推论一:
对于任何含有n个逻辑变量AB{1B}、AB{2B}…AB{iB}…AB{nB}的逻辑函数式f(AB{1B}、AB{2B}…AB{iB}…AB{nB}),任取一个逻辑变量AB{iB},若
当AB{iB}=1时,f(AB{1B}、AB{2B}…AB{iB}…AB{nB})=0(或1);
当AB{iB}=0时,f(AB{1B}、AB{2B}…AB{iB}…AB{nB})=0(或1);
则f(AB{1B}、AB{2B}…AB{iB}…AB{nB})≡0(或1)。
推论二:
对于任何含有n个逻辑变量AB{1B}、AB{2B}…AB{iB}…AB{nB}的逻辑函数式f(AB、-、{1B、}、AB{2B}…AB{iB}…AB{nB}),任取一个逻辑变量AB{iB},若
当AB{iB}=1时,f(AB{1B}、AB{2B}…AB{iB}…AB{nB})=1(或0);
当AB{iB}=0时,f(AB{1B}、AB{2B}…AB{iB}…AB{nB})=0(或1);
则f(AB{1B}、AB{2B}…AB{iB}…AB{nB})≡AB{iB}(或Ai)
这两个推论是逐次代入化简法的两种特殊形式,在化简时也有着特别的用处。
推论三:
含有n个逻辑变量A1,A2…An和m个乘积项f1(A1,A2…An),f2(A1,A2…An),…fm(A1,A2…An)的逻辑函数式f(A1,A2…An),即f(A1,A2…An)=f1(A1,A2…An)+f2(A1,A2…An)+…+fm(A1,A2…An),设任意一个乘积项fi(A1,A2…An)=A1•A2•…•Aj,(1≤i≤m,1≤j≤n),当其中任意一个因子Ak(1≤k≤j)等于0或1时,将其取值分别代入f(A1,A2…An)均可得到相同的结果,即逻辑函数式f′(A1,A2…An),则f(A1,A2…An)中所有乘积项中的因子Ak及其非项Ak是多余的,可以舍去。
利用第二节的结论即可证明:
由于f=ABkfB{1B}+AkfB{2B},当f1=f2时,有f=AkkfB{1B}+AkfB1=f1,即不论Ak取何值时,均不影响逻辑函数式的结果,也说明Ak与Ak是多余的。
3逐次代入化简法的应用
根据上面给出的结论,在应用逐次代入化简法时,先任选某个变量,分别令其为1与0,并算出相应结果;如果这个结果还不是最简形式,就要重复上述过程,最后将每一步的结果进行合并。
在每次先取取值变量的时候,应首先选取各个乘积项中出现次数最多的变量进行化简,这样效果最好。
这里给出几个例子。
例1,化简逻辑函数式f(A,B)=AB+A[AKB-]P
解:
当A=1时,f(A,B)=f1(B)=B+[AKB-]=1;
当A=0时,f(A,B)=f2(B)=0;
所以,由上述结论可知,f(A,B)=A•1+[AKA-]•0=A。
在例1中如果先选取变量B进行化简,则需要用到推论三,因为不论B为何值,均可得到结果A。
例2,化简逻辑函数式f(A,B,C)=AB+[AKA-]C+BCP
解:
当A=1时,f(A,B,C)=f1(B,C)=1•B+0•C+BC=B+BC
下面再对f1(B,C)进行化简:
当B=1时,f1(B,C)=1,当B=0时,f1(B,C)=0,由上述推论二可知,f1(B,C)=B。
即当A=1时,f(A,B,C)=f1(B,C)=B;
当A=0时,f(A,B,C)=f2(B,C)=0•B+1•C+BC=C+BC;由上一步可知,C+BC=C;
即当A=0时,f(A,B,C)=f2(B,C)=C;
所以,由上述结论可以得到,f(A,B,C)=A•f1(B,C)+[AKA-]•f2(B,C)=AB+[AKA-]C
例3,化简逻辑函数式f(A,B,C,D)=A[AKC-]+ABC+AC[AKD-]+CDP{[2]P}
解:
当A=1时,f(A,B,C,D)=f1(B,C,D)=[AKC-]+BC+C[AKD-]+CD
再来化简f1(B,C,D):
当B=1时,f1(B,C,D)=f1(C,D)=[AKC-]+C+C[AKD-]+CD
(1)
当B=0时,f1(B,C,D)=f2(C,D)=[AKC-]+C[AKD-]+CD
再来对f2(C,D)进行化简:
当C=1时,f2(C,D)=f(D)=[AKD-]+D=1
当C=0时,f2(C,D)=f(D)=1
所以,当B=0时,f1(B,C,D)=f2(C,D)=1
(2)
由
(1)
(2)两式,利用前述推论一可知,当A=1时,f1(B,C,D)=1。
再看A=0的情况:
当A=0时,f(A,B,C,D)=f2(B,C,D)=CD,此时,f2(B,C,D)已为最简形式,不需要再往下进行化简了。
综上,f(A,B,C,D)=Af1(B,C,D)+[AKA-]f2(B,C,D)=A•1+[AKA-]•CD=A+CD
例4,化简逻辑函数式f(A,B,C,D)=A[AKC-]+A[AKD-]+CD+[AKA-]P{[2]P}
解:
当A=1时,f(A,B,C,D)=1•[AKC-]+1•[AKD-]+CD+0=[AKC-]+[AKD-]+CD=[AKC-]+[AKD-]+C=1;
当A=0时,f(A,B,C,D)=0•[AKC-]+0•[AKD-]+CD+1=1
应用推论二,可知,f(A,B,C,D)=A[AKC-]+A[AKD-]+CD+[AKA-]=1。
上述四例都应用逐次代入化简法进行化简,其中例2、例3与例4还用到了推论。
可以看出,这种化简方法有效易行。
4逐次代入化简法的简化形式
需要指出的是,利用上述结论进行化简时,方法很简单,写起来看上去很繁琐,在实际化简时可以写成更简便的树形形式P{[3]P}。
这里再给出两个例子:
例5,化简逻辑函数式f(A,B,C,)=A(BC+[AKB-][AKC-])+AB[AKC-]+A[AKB-]CP{[4]P}
还是利用上述逐次代入化简法进行化简,但将它写成树形形式,更简洁直观。
解:
f(A,B,C,)A=1[]A=0BC++B+CB=1[]B=0C+=1+C=1=B+=10•(+BC)+0•B+0•C=0f(A,B,C,)=A•1+•0=A
最后一步实际上也可直接根据推论二得出结果。
这里说明一下,在本例中,首先选取的取值变量为A,令其等于1与0,分别写在等号上下两侧(这里用的是一根横线),其后括号内的上一行为A=1的结果,下一行为A=0的结果。
在化简过程中,选取的变量数与所用到的括号数是相等的。
本例只选取了两个变量进行取值代入计算,书写形