2.5逻辑函数的几何图形表示方法2.5.3逻辑函数的化简卡诺图的定义:逻辑函数的最小项用方块图表示,用几何位置上的相邻,形象地表示各个最小项之间在逻辑上的相邻。卡诺图是逻辑函数化简的重要工具。1.卡诺图的结构(1)卡诺图一般都画成正方形或矩形。图中分割出的小方格数有2n个,n为变量数。因为n个变量共有2n个最小项,而每个最小项用一个小方格表示。(2)变量的取值的顺序要按照循环码排列,以确保最小项的逻辑上的相邻关系能在图形上清晰地反映出来。循环码:相邻的两个代码之间仅有1位不同,其余各位均相同。例如:0000→0001→0011→0010→0110→0111→0101→0111···2.变量卡诺图如下:Am2m1m3Bm00101AABABABBAB0101Bm1m2m3Am00101(a)(b)(c)B123A00101(d)1ABm2m1m3C000101(a)3变量卡诺图如下:1110m0m4m7m5m6ABABCABCABCC000101(b)1110ABCABCABCABCABCBC145A000101111002763(c)ABm4m1m5CD000100014变量卡诺图如下:1110m0m8m13m9m12m7m2m61110m3m11m14m10m15ABABCDABCDABCDCD000100011110ABCDABCDABCDABCDABCDABCDABCDABCD1110ABCDABCDABCDABCDABCDCD145AB00010001111002763138911101214111015(a)(b)(c)注:mi地下标i为十进制数,它地构成顺序是高两位为AB,低两位为CD。AB和CD都为循环码00→01→11→102关于卡诺图的几何位置相邻:卡诺图中任何几何位置相邻的最小项,在逻辑上都具有相邻性。对于n变量卡诺图每个最小项都有n个相邻最小项。在上图4变量卡诺图(a)中,与m5相邻的最小项有m1,m4,m7和m13。仔细分析卡诺图可知,几何相邻包括以下三种情况:·相接--紧接着。·相对--任意一行或一列的两头。·相重--将卡诺图对折起来的两边或上下上的位置重合,重合的最小项相邻,这种相邻称为几何相邻。ABm4m1m5CD000100011110m0m8m13m9m12m7m2m61110m3m11m14m10m15ABm4m1m5CD000100011110m0m8m13m9m12m7m2m61110m3m11m14m10m15ABm4m1m5CD000100011110m0m8m13m9m12m7m2m61110m3m11m14m10m15m1与m5,m4与m5相邻相接m0与m8,m1与m9,m3与m11,m2与m10相邻相对·相重m0与m2,m4与m6,m12与m14,m8与m10相邻相对·相重32.卡诺图上最小项的合并规律(1)两个小方格的合并AB213C000101(a)11106ABC000101(b)111076AB1C000101(c)11105∑m(1,2,3,6)=ABC+ABC+ABC+ABC=AC(B+B)+BC(A+A)=AC+BC∑m(6,7)=AB∑m(1,5)=BCAB15CD0001000111101110(a)ABCD00010001111012111014(a)∑m(12,14)=ABD∑m(1,5)=ACD4(2)四个小方格的合并AB415CD00010001111008139127261110311141015AB4CD000100011110126111014ABCD000100011110082111010AB213C00010111100AB713C00010111105m5+m7+13+15=BD∑m(4,6,12,14)=BD∑m(0,2,8,10)=BD∑m(0,1,2,3)=A∑m(0,2,8,10)=C5(3)八个小方格的合并AB415CD000100011110072611103AB15CD0001000111101397111031115AB1CD0001000111100892111031110∑m(0,1,2,3,4,5,6,7)=A∑m(1,3,5,7,9,11,13,15)=D∑m(0,1,2,3,8,9,10,11)=B63将给定函数用卡诺图表示(1)逻辑函数表达式为最小项之和时的表示例1:画出F(A,B,C)=∑m(0,3,7)的卡诺图。AB1C000101111011注:在卡诺图上最小项所对应的小方格标以1,剩余的小方格标以0,有时0可以不标。例2:画出F(A,B,C,D)=∑m(0,3,5,7,10,11,12,14)的卡诺图。AB1CD000100011110111110111117(2)逻辑函数由正值表时的表示可直接根据正值表在卡诺图中填写,函数值为1的填1,为0填0。(3)逻辑函数是一般逻辑函数时的表示先将逻辑函数转换成与-或表达式(不必化为最小项之和的形式),然后在卡诺图中把每一个乘积项所包含的那些最小项处填1,而剩下的填0。例1:画出F(A,B,C)=AC+AB+ABC+BCAB111C000101111011例2:画出F(A,B,C)=(A+B)(C+D)的卡诺图F(A,B,C)=(A+B)(C+D)=(A+B)+C+D=AB+AB+CD解:先将其化为与或表达式AB1CD000100011110111110111111182.6逻辑函数的化简2.6.1卡诺图化简法2.6.2代数化简法92.6.1用卡诺图化简逻辑函数·将逻辑函数化简成的步骤最简与-或表达式1).将给定函数用卡诺图表示2).对卡诺图上的含1的方格画卡诺圈3).选择乘积项写出最简与-或表达式例:用卡诺图求函数F(A,B,C,D)=ABCD+AB+ABD+BC+BCD的最简与-或表达式AB1CD0001000111101111101111111F(A,B,C,D)=BD+CD+AD·几个应注意的问题1).圈越大越好,圈数越少越好.2).每个圈至少应包含一个其他圈中不能包含进去的小方格,否则它将是多余项.3).必须圈完所有的含1的方格.4).最小项的圈法不止一种,化简结果并不唯一.5).同一方格可以被圈多次.·易被忽视的问题1).卡诺图中四个角上的最小项可以合并..2).避免出现多余项.102.6.2代数化简法(P56)一、合并项法二、吸收法三、消去法四、配项法五、添加项法六、对偶法11