下面从讨论一变量卡诺图开始,逐步过渡到多变量的卡诺图。
大家知道,n个变量的逻辑函数有2n个最小项,因此一个变量的逻辑函数有两个最小项。设变量为D,则最小项为和D,分别记为m0和m1,即m0=,m1=D 。这两个最小项可用两个相邻的方格来表示,如图1(a)所示。方格上的和D分别表示原变量和非变量。为了简明起见,非变量可以不标出,只标出原变量D,即可得图1(b)。图1(c)是进一步的简化画法,其中m0、m1只用其下标编号来表示。
图1 1变量卡诺图 |
如果逻辑函数的变量增为两个,设为C、D,则2变量逻辑函数的最小项为22=4项,即,,,m3=CD。由于有4个最小项,可用4个相邻的方格来表示。这4个方格可以由折叠了的1变量卡诺图展开来获得,如由图2(a)按箭头方向展开成图2(b)。在图2(b)中,变量D标在图的底下,标的规律符合展开的规律(参看图1c),中间两格底下为D,两边的两格底下为(图中未标出)。因为变量C的标法必须区别于D,这样就有两种可能的标法,可以标在展开前方格的顶上,也可标在展开后新的两个方格的顶上,图(b)采用后一种标法,以保持左边的第一格仍为m0项,即维持展开前两方格最小项序号不改变。由图2(b)可看到一个规律:新的方格内最小项的编号比对应的原方格增加了2n-1=22-1=2。按照这个规律折叠图2(a)时,方格1后面为方格3,方格0后面为方格2,展开后即得图2(b)所示的2变量卡诺图。
图2 2变量卡诺图 |
综上所述,可归纳"折叠展开"的法则如下:
1.新增加的方格按展开方向应标以新变量。
2.新的方格内最小项编号应为展开前对应方格编号加2n-1。
按照同样的方法,可从折叠的2变量卡诺图展开获得3变量卡诺图。3变量逻辑函数L(B,C,D)应有8个最小项,可用8个相邻的方格来表示,这8个方格可由图3(a)展开成图3(b)来获得。新增加的4个方 格按展开方向应标以新增加的变量B(以区别于原来的变量C、D)。而且,新增加的方格内最小项的编号比展开前对应方格编号增加2n-1=23-1=4,这样即可获得3变量卡诺图,如图3(b)所示。在图中,可根据某一方格所处的位置,列出该方格代表的最小项,例如,2号方格处于变量为的区域,则,余类推。
图3 3变量卡诺图 |
同理,可得4变量卡诺图,如图4所示。
图4 4变量卡诺图 |
在使用时,只要熟悉卡诺图上各变量的取值情况(即方格外各变量A、B、C、D等的取值的区域),就可以直接填入对应的最小项。