目录
逻辑图表示
卡诺图表示
卡诺图的标准格式
二变量卡诺图
三变量卡诺图
四变量卡诺图
卡诺图表示逻辑函数
从逻辑表达式到卡诺图
逻辑代数的三个规则
代入规则
反演规则
对偶规则
逻辑函数的化简方式
化简逻辑函数的意义
逻辑函数最简表示式的判别标准
公式化简法
并项法
吸收法
消去法
配项法
卡诺图化简法
化简依据
用卡诺图化简逻辑函数的方法
例题
逻辑图表示
逻辑图就是实现逻辑运算的电路图,每一个逻辑运算符号在逻辑电路中就是一个最基本的单元电路
卡诺图表示
卡诺图的标准格式
如果两个最小项中只有一个变量互为反变量,其余变量均相同,则称这两个最小项为逻辑相邻,简称相邻项
卡诺图(Karnaugh Map)是一种用小方格来构成的图形n个变量的函数,有2^n个最小项,每一个小方格代表一个最小项,将全部小方格按照相邻性排列起来就构成了n变量的卡诺图
小方格的几何位置的规定:将全部变量按顺序分成两组,每组变量按循环码取值排列
2个变量的循环码 A B 0 0 0 1 1 1 1 0
3个变量的循环码 A B C 0 0 0 0 0 1 0 1 1 0 1 0 1 1 0 1 1 1 1 0 1 1 0 0
4个变量的循环码 A B C D 0 0 0 0 0 0 0 1 0 0 1 1 0 0 1 0 0 1 1 0 0 1 1 1 0 1 0 1 0 1 0 0 1 1 0 0 1 1 0 1 1 1 1 1 1 1 1 0 1 0 1 0 1 0 1 1 1 0 0 1 1 0 0 0
即画卡诺图时,遵循每次只加一个1,或每次只减一个1的原则
二变量卡诺图
二变量A、B共有2^2=4个最小项,卡诺图由4个小方格构成
将变量分成两组,用每一列和每一行上的1和0组成的循环码分别表示两组变量A、B对应的取值,则列和行相交方格的最小项编号就是这些变量取值组合对应的最小项编号
三变量卡诺图
三变量A、B、C共有2^3=8个最小项,卡诺图由8个小方格构成
将变量分成两组,用每一列和每一行上的1和0组成的循环码分别表示两组变量A、BC对应的取值,则列和行相交方格的最小项编号就是这些变量取值组合对应的最小项编号
四变量卡诺图
三变量A、B、C共有2^4=16个最小项,卡诺图由16个小方格构成
将变量分成两组,用每一列和每一行上的1和0组成的循环码分别表示两组变量AB、CD对应的取值,则列和行相交方格的最小项编号就是这些变量取值组合对应的最小项编号
对于五变量及以上的卡诺图方格个数较多,在逻辑函数化简中很少使用,这里不再介绍
卡诺图表示逻辑函数
从逻辑表达式到卡诺图
由于任何一个逻辑函数都可以变换成最小项表达式,而n个变量的卡诺图包含了n个变量所有最小项,所以n个变量的卡诺图可以表示n个变量的逻辑函数
标准式填卡诺图
对于标准与或式,将逻辑函数中的最小项直接填入卡诺图,其中有最小项直接填入卡诺图,其中有最小项的方格填1,没有最小项的方格填0
对于标准或与式,根据逻辑函数的标准与或表示式和标准或与表示式之间存在对应的转换关系,将逻辑函数的标准或与式中没有的最大项编号作为标准与或式中有最小项的编号直接插入填入卡诺图,有最小项的方格填1,没有最小项的方格填0
非标准与或式填卡诺图
方法一:先将逻辑函数变换成最小项表达式(标准与或式后),再填卡诺图
方法二:利用与项中的变量(原变量取1,反变量取0)填特征值卡诺图
带约束条件的标准与或表示式填卡诺图
将约束条件对应的最小值编号的方格填×
逻辑代数的三个规则
代入规则
在任何含有变量A的逻辑等式中,如果等式两边所有出现A的地方都用另一个逻辑变量或逻辑函数代替,则逻辑等式仍然成立
应用代入规则,可以扩大基本定律和常用公式的使用范围
即如将变量E,用C+D代替
反演规则
将一个逻辑函数Y进行下列变换:
·→+ +→·
0→1 1→0
原变量→反变量 反变量→原变量
所得新函数为原函数Y的反函数,用表示
应用反演规则时应该注意以下两点:反演运算前后,函数式中运算的优先顺序保持不变
多个变量上的非号(亦称长非号)应该保持不变
对偶规则
将一个逻辑函数Y进行下列变换:
·→+ +→·
0→1 1→0
所得新函数为原函数Y的对偶函数,亦称对偶式,用Y'表示
应用对偶规则时应该注意以下两点:对偶运算前后,函数式中运算的优先顺序保持不变
所有变量的非号都保持不变
逻辑函数的化简方式
化简逻辑函数的意义
同一个逻辑函数往往有多种不同的表示式,有的复杂,有的简单,差别很大
在逻辑电路设计时,对逻辑函数的化简就显得十分重要
逻辑函数最简表示式的判别标准
化简逻辑函数的目的就是要找出它的最简表示式
判别最简与或表示式的标准是:
表示式中的与项个数最少
每个与项中的变量数最少
公式化简法
并项法
把两个与项合并为一项,消去互补变量
例
吸收法
吸收掉多余的与项
例
消去法
消去与项中多余的因子
例
配项法
利用进行配项,将某个与项变为两项,再和其他项合并,以消去更多的与项,从而获得最简与或式
例
只要熟悉逻辑代数的基本定律和常用公式,以上四种方法可以很容易理解
卡诺图化简法
化简依据
相邻最小项相加规律:
两个相邻最小项有一个变量相异,相加可以消去这一个变量,化简结果为相同变量的与四个相邻最小项有两个变量相异,相加可以消去这两个变量,化简结果为相同变量的与
以此类推2^n个相邻最小项有n个变量相异,相加可以消去这n个变量,化简结果为相同变量的与
用卡诺图化简逻辑函数的方法
用卡诺图化简逻辑函数的基本原理就是利用相邻最小项相加规律和卡诺图的图形特征结合起来,通过画包围圈,把卡诺图上表征相邻最小项的相邻1方格圈在一起进行合并,达到用一个简单与项代替若干个最小项的目的
在表示逻辑函数的卡诺图中,画包围圈规则如下:包围圈必须包含2^n个相邻1方格,n=0,1,2,…
同一个1方格可以被不同的包围圈重复圈多次,但新增加的包围圈必须有原先没有被圈过的1方格
包围圈中相邻1方格的个数尽量多
包围圈的个数尽量少
例题
用卡诺图化简法化简以下式子
例
解
这个式子里有四项,每个加号隔开的在这里称为一项从第一项开始看,第一项为AB,没有非符号,没有出现C,C为无关变量,所以要在110,111上写1
第二项AC,同理,B为无关变量,所以要在101,111上写1
第三项BC,同理,A为无关变量,所以要在011,111上写1
第四项,有非符号,A为无关变量,所以要在010,110上写1二进制数分别对应ABC
如
010
A为0,BC为10
尽可能大的包裹圈注意每次包裹方格的个数必须是2^n,n可以是任意自然数,边界的也视为相邻
此图中有两个圈,即有两项,同时出现0和1的变量为无关变量
如果变量单独出现的为1则直接写下
如果为0则需要在变量上加上-符号
包裹两个方格的圈中,A变量出现了一个1,B变量出现了0和1,C变量出现了一个1,所以第一项为AC
包裹四个方格的圈中,A变量出现了0和1,B变量出现了一个1,C变量出现了0和1,所以第二项为B
所以
例
解
包裹四个方格的圈中
上方的,变量A出现了一个0,B中出现了一个0,C中出现了0和1,D中出现了0和1,所以此项为
右下角的,变量A出现了一个1,B出现了0和1,C中出现了一个1,D中出现了0和1,所以此项为包裹两个方格的圈中
A出现了一个0,B出现了0和1,C出现了一个0,D出现了一个1,所以此项为
所以
例
解两个包围圈所以有两项
包裹两个方格的圈中
上方的,变量A出现了0,B出现了一个0,C出现了0和1,所以此项为
下方的,变量A出现了1,B出现了0和1,C出现了一个1,所以此项为所以
例
解
以下两种都可以,包围圈都合法
蓝色包围圈包裹了四个角,边界可以看作是相邻的
例
解对于这种形式的式子,只需要看最小项的编号,以及无关项的编号即可
这个式子中最小项有0,3,4,9,10,12,13
因此对于最小项编号十进制数对应的二进制数即为需要写1的位置
0对应0000,3对应0011,4对应0100,9对应1001,10对应1010,12对应1100
13对应1101
AB为二进制数前两位,CD为二进制数后两位,在相应位置写1
无关项有1,2,6,7,8,11,14
1对应0001,2对应0010,6对应0110,7对应0111,8对应1000,11对应1011,14对应1110
AB为二进制数前两位,CD为二进制数后两位,在相应位置写×
画圈时可以将×当作1圈上,图中有两个黄色圈,分别包裹左右,上下八个方格注意每次包裹方格的个数必须是2^n,n可以是任意自然数,边界的也视为相邻
图中有几个圈就有几项,其中如果变量的0和1同时出现则该变量在此项中无关
如果变量单独出现的为1则直接写下
如果为0则需要在变量上加上-符号
包裹四个方格的圈中,A变量出现了一个1,B变量出现了0和1,C变量出现了一个0,D变量出现了0和1,所以此项为
包裹八个方格的圈中其中上下圈,A中出现了0和1,B出现了一个0,C出现了0和1,D出现了0和1,所以此项为
其中左右圈,A中出现了0和1,B中出现了0和1,C出现了0和1,D出现了一个0,所以此项为
所以
例
解对于上边式子
一共四项
第一项中,A变量为非,为0,B变量为非,为0,C为1,D为1,所以找0011处写1
第二项中,A变量为1,B没出现所以是0和1,C为非,为0,D为1,所以找1001,1101写1
第三项中,A变量为1,B为非,为0,C为非,为0,D没出现,所以D为0和1,所以找1000,1001写1
第四项中,A没出现,所以A为0和1,B没出现,所以B为0和1,C为非,为0,D为1,所以找0001,0101,1001,1101写1
此式子中下面为无关项,无关项中有两项
第一项A没出现,所以A为0和1,B为1,C为1,D为1,找0111,1111写×
第二项A为1,B没出现,所以B为0和1,C为1,D没出现,所以D为0和1,找1010,1011,1110,1111写×
尽可能大的画包围圈,×可以当作1
化简方法同上