用卡諾圖將下列具有約束項的邏輯函式化為最簡與 或表示式

2021-05-05 16:57:14 字數 5099 閱讀 2668

1樓:匿名使用者

有點奇怪的地方,就是在m8,畫出卡諾圖如下1 0 1 1

1 0 1 1

x x x x

x 0 0 x

左下方的那個x,即是有效項m8,又是約束項a(d非)中的一部分到底是畫x還是畫1呢?不過,到底畫什麼都沒關係,因為對結果無影響結果:a非c+d非

2樓:

早忘光了。。。呵呵

摘自於

一 卡諾圖的構成

卡諾圖是一種平面方格圖,每個小方格代表一個最小項,故又稱為最小項方格圖。

1.結構特點

卡諾圖中最小項的排列方案不是唯一的,圖2.5(a)、(b)、(c)、(d)分別為2變數、3變數、4變數、5變數卡諾圖的一種排列方案。圖中,變數的座標值0表示相應變數的反變數,1表示相應變數的原變數。各小方格依變數順序取座標值,所得二進位制數對應的十進位制數即相應最小項的下標i。

在五變數卡諾圖中,為了方便省略了符號「m」,直接標出m的下標i 。

圖2. 5 2~5變數卡諾圖

從圖2.5所示的各卡諾圖可以看出,卡諾圖上變數的排列規律使最小項的相鄰關係能在圖形上清晰地反映出來。具體地說,在n個變數的卡諾圖中,能從圖形上直觀、方便地找到每個最小項的n個相鄰最小項。

以四變數卡諾圖為例,圖中每個最小項應有4個相鄰最小項,如m5的4個相鄰最小項分別是m1,m4,m7,m13,這4個最小項對應的小方格與m5對應的小方格分別相連,也就是說在幾何位置上是相鄰的,這種相鄰稱為幾何相鄰。而m2則不完全相同,它的4個相鄰最小項除了與之幾何相鄰的m3和m6之外,另外兩個是處在「相對」位置的m0(同一列的兩端)和m10(同一行的兩端)。這種相鄰似乎不太直觀,但只要把這個圖的上、下邊緣連線,捲成圓筒狀,便可看出m0和m2在幾何位置上是相鄰的。

同樣,把圖的左、右邊緣連線,便可使m2和m10相鄰。通常把這種相鄰稱為相對相鄰。除此之外,還有「相重」位置的最小項相鄰,如五變數卡諾圖中的m3,除了幾何相鄰的m1,m2,m7和相對相鄰的m11外,還與m19相鄰。

對於這種情形,可以把卡諾圖左邊的矩形重疊到右邊矩形之上來看,凡上下重疊的最小項相鄰,這種相鄰稱為重疊相鄰。

歸納起來,卡諾圖在構造上具有以下兩個特點:

☆ n個變數的卡諾圖由2n個小方格組成,每個小方格代表一個最小項;

☆ 卡諾圖上處在相鄰、相對、相重位置的小方格所代表的最小項為相鄰最小項。

二 卡諾圖的性質

卡諾圖的構造特點使卡諾圖具有一個重要性質:可以從圖形上直觀地找出相鄰最小項合併。合併的理論依據是並項定理ab+ab=a。例如,

根據定理ab+ab=a和相鄰最小項的定義,兩個相鄰最小項可以合併為一個與項並消去一個變數。例如,4變數最小項abcd和abcd相鄰,可以合併為abd;abcd和abcd相鄰,可以合併為abd;而與項abd和abd又為相鄰與項,故按同樣道理可進一步將兩個相鄰與項合併為bd。

用卡諾圖化簡邏輯函式的基本原理就是把上述邏輯依據和圖形特徵結合起來,通過把卡諾圖上表徵相鄰最小項的相鄰小方格「圈」在一起進行合併,達到用一個簡單「與」項代替若干最小項的目的。

通常把用來包圍那些能由一個簡單「與」項代替的若干最小項的「圈」稱為卡諾圈。

三 邏輯函式在卡諾圖上的表示

1.給定邏輯函式為標準「與-或」表示式

當邏輯函式為標準「與-或」表示式時,只需在卡諾圖上找出和表示式中最小項對應的小方格填上1,其餘小方格填上0,即可得到該函式的卡諾圖。

例如,3變數函式f(a,b,c)=∑m(1,2,3,7)的卡諾圖如圖2.6所示。

圖2.6 函式f(a,b,c)=∑m(1,2,3,7)的卡諾圖

2.邏輯函式為一般「與-或」表示式

當邏輯函式為一般「與-或」表示式時,可根據「與」的公共性和「或」的疊加性作出相應卡諾圖。

例如,4變數函式f(a,b,c,d)=ab+cd+a·bc的卡諾圖如圖2.7所示。

圖2.7 函式f(a,b,c,d)=ab+cd+a·bc的卡諾圖

填寫該函式卡諾圖時,只需在4變數卡諾圖上依次找出和「與項」ab、cd、a·bc對應的小方格填上1,便可得到該函式的卡諾圖。

當邏輯函式表示式為其他形式時,可將其變換成上述形式後再作卡諾圖。

為了敘述的方便,通常將卡諾圖上填1的小方格稱為1方格,填0的小方格稱為0方格。0方格有時用空格表示。

四 卡諾圖上最小項的合併規律

卡諾圖的一個重要特徵是,它從圖形上直觀、清晰地反映了最小項的相鄰關係。當一個函式用卡諾圖表示後,究竟哪些最小項可以合併呢?下面以2、3、4變數卡諾圖為例予以說明。

1.兩個小方格相鄰, 或處於某行(列)兩端時,所代表的最小項可以合併,合併後可消去一個變數。

例如,圖2.8給出了2、3、4變數卡諾圖上兩個相鄰最小項合併的典型情況的。

圖2.8 兩個相鄰最小項合併的情況

2.四個小方格組成一個大方格、或組成一行(列)、或處於相鄰兩行(列)的兩端、或處於四角時,所的表的最小項可以合併,合併後可消去兩個變數。

例如,圖2.9給出了3、4變數卡諾圖上四個相鄰最小項合併的典型情況的。

圖2.9 四個相鄰最小項合併的情況

3.八個小方格組成一個大方格、或組成相鄰的兩行(列)、或處於兩個邊行(列)時,所代表的最小項可以合併,合併後可消去三個變數。

例如,圖2.10給出了3、4變數卡諾圖上八個相鄰最小項合併的典型情況的。

圖2.10 八個相鄰最小項合併的情況

至此,以3、4變數卡諾圖為例,討論了2,4,8個最小項的合併方法。依此類推,不難得出n個變數卡諾圖中最小項的合併規律。

歸納起來,n個變數卡諾圖中最小項的合併規律如下:

(1)卡諾圈中小方格的個數必須為2m個,m為小於或等於n的整數。

(2)卡諾圈中的2m個小方格有一定的排列規律,具體地說,它們含有m個不同變數,(n-m)個相同變數。

(3)卡諾圈中的2m個小方格對應的最小項可用(n-m)個變數的「與」項表示,該「與」項由這些最小項中的相同變數構成。

(4)當m=n時,卡諾圈包圍了整個卡諾圖,可用1表示,即n個變數的全部最小項之和為1。

五、卡諾圖化簡邏輯函式

1.幾個定義

蘊涵項:在函式的「與-或」表示式中,每個「與」項被稱為該函式的蘊涵項(implicant)。

顯然,在函式卡諾圖中,任何一個1方格所對應的最小項或者卡諾圈中的2m個1方格所對應的「與」項都是函式的蘊涵項。

質蘊涵項:若函式的一個蘊涵項不是該函式中其他蘊涵項的子集,則此蘊涵項稱為質蘊涵項(prime implicant),簡稱為質項。

顯然,在函式卡諾圖中,按照最小項合併規律,如果某個卡諾圈不可能被其他更大的卡諾圈包含,那麼,該卡諾圈所對應的「與」項為質蘊涵項。

必要質蘊涵項:若函式的一個質蘊涵項包含有不被函式的其他任何質蘊涵項所包含的最小項,則此質蘊涵項被稱為必要質蘊涵項(essential prime implicant),簡稱為必要質項。

在函式卡諾圖中,若某個卡諾圈包含了不可能被任何其他卡諾圈包含的1方格,那麼,該卡諾圈所對應的「與」項為必要質蘊涵項。

2.求函式最簡「與-或」表示式

(1)一般步驟:

第一步:作出函式的卡諾圖。

第二步:在卡諾圖上圈出函式的全部質蘊涵項。按照卡諾圖上最小項的合併規律,對函式f卡諾圖中的1方格畫卡諾圈。

為了圈出全部質蘊涵項,畫卡諾圈時在滿足合併規律的前題下應儘可能大,若卡諾圈不可能被更大的卡諾圈包圍,則對應的「與」項為質蘊涵項。

第三步:從全部質蘊涵項中找出所有必要質蘊涵項。在卡諾圖上只被一個卡諾圈包圍的最小項被稱為必要最小項,包含必要最小項的質蘊涵項即必要質蘊涵項。

為了保證所得結果無一遺漏地覆蓋函式的所有最小項,函式表示式中必須包含所有必要質蘊涵項。

第四步:求出函式的最簡質蘊涵項集。若函式的所有必要質蘊涵項尚不能覆蓋卡諾圖上的所有1方格,則從剩餘質蘊涵項中找出最簡的所需質蘊涵項,使它和必要質蘊涵項一起構成函式的最小覆蓋。

(3)舉例

例1 用卡諾圖化簡邏輯函式f(a,b,c,d)=∑m(0,3,5,6,7,10,11,13,15) 。

解 根據卡諾圖化簡的步驟,該題化簡過程如下:

圖2.11

該題中,5個必要質蘊涵項已將函式的全部最小項覆蓋,故將各卡諾圈對應的與項相或即可得到函式f的最簡「與-或」表示式為

f(a,b,c,d)=a·b·c·d+abc+abc+bd+cd

例2 用卡諾圖化簡邏輯函式f(a,b,c,d)=∑m(2,3,6,7,8,10,12) 。

解 根據卡諾圖化簡的步驟,該題化簡過程如下:

圖2.12

由圖可知,該函式包含兩個必要質蘊涵項,即ac和ac·d。在選取必要質蘊涵項之後,尚有最小項m10未被覆蓋。為了覆蓋最小項m10,可選質蘊涵項bcd或者ab·d,由於這兩個質蘊涵項均由3個變數組成,故可任選其中之一作為所需質蘊涵項,即f的最簡質蘊涵項集可為

或者因而,可求得函式f的最簡「與-或」表示式為

f(a,b,c,d)=ac+ac·d+bcd 或者 f(a,b,c,d)=ac+ac·d+ab·d

這裡,函式f的最簡「與-或」式有兩個,其複雜程度相同。由此可見,一個函式的最簡「與-或」表示式不一定是唯一的!

歸納起來,卡諾圖化簡的原則是:

☆ 在覆蓋函式中的所有最小項的前提下,卡諾圈的個數達到最少。

☆ 在滿足合併規律的前題下卡諾圈應儘可能大。

☆ 根據合併的需要,每個最小項可以被多個卡諾圈包圍。

3.求函式的最簡「或-與」表示式

當需要求一個函式的最簡「或-與」表示式時,可採用「兩次取反法」。

具體如下:

☆ 先求出函式f的反函式f的最簡「與-或」表達(合併卡諾圖上的0方格);

☆ 然後對f的最簡「與-或」表示式取反,從而得到函式f的最簡「或-與」表示式。

例如, 用卡諾圖求邏輯函式f(a,b,c,d)=∑m(3,4,6,7,11,12,13,14,15)的最簡「或-與」表示式。

解 首先畫出函式f的卡諾圖如圖2.13所示。

圖2.13

圖中,f的0方格即反函式f的1方格,它們代表f的各個最小項,將全部0方格合併就可得到反函式f的最簡「與-或」表示式

f(a,b,c,d)=ab+cd+bd

再對上述函式式兩邊取反,即可求得函式的最簡「或-與」表示式

卡諾圖化簡邏輯函式具有方便、直觀、容易掌握等優點。但依然帶有試湊性。尤其當變數個數大於6時,畫圖以及對圖形的識別都變得相當複雜。

為了克服它的不足,引入了另一種化簡方法--列表化簡法。

如何用visio畫數電的卡諾圖,用VISIO如何畫電流電壓的波形圖

畫電路圖 流程路用visio比較方便。它沒提供卡諾圖元件,用畫圖軟體畫畫就行了 提供一個 儲存好想用就拿出來畫。用visio如何畫電流電壓的波形圖 visio畫電流電 壓的波形圖 visio 裡面,選擇檔案 形狀 需要的型別,找到電流電壓波專形圖就可以畫了屬。office visio 2010 是一...

用卡諾圖化簡邏輯函式成為最簡與或式和最簡或與式,求詳細解法

f ab d f a b d f a b ad f abd cd f c d b d 1 f a,b,c,d m 0,2,4,6,8,9,10,11,12,14 m 0,2,4,6 m 8,9,10,11 m 9,11,13,15 a d ab ad 或與式f a d a b d a b d 或 m...

讀下面的「中國地區分佈圖」,完成下列問題1將圖中字母代

1 盆地 a是塔里木盆抄地bai,d是四川盆地 高原 c是青藏高原,h是雲du貴高原 山脈 zhie是秦嶺,daof是太行山,g是喜馬拉雅山,m是臺灣山脈 2 a b之間的分界線是天山山脈 d盆地中的成都平原號稱 天府之國 3 c高原的景觀特徵是雪山連綿,冰川廣佈 4 位於地勢 二 三階梯分界線上的...