
- 數位電子教程
- 數位電子 - 首頁
- 數位電子基礎
- 數字系統型別
- 訊號型別
- 邏輯電平和脈衝波形
- 數字系統元件
- 數字邏輯運算
- 數字系統優勢
- 數制
- 數制
- 二進位制數表示
- 二進位制算術
- 帶符號二進位制算術
- 八進位制算術
- 十六進位制算術
- 補碼算術
- 進位制轉換
- 進位制轉換
- 二進位制轉十進位制
- 十進位制轉二進位制
- 二進位制轉八進位制
- 八進位制轉二進位制
- 八進位制轉十進位制
- 十進位制轉八進位制
- 十六進位制轉二進位制
- 二進位制轉十六進位制
- 十六進位制轉十進位制
- 十進位制轉十六進位制
- 八進位制轉十六進位制
- 十六進位制轉八進位制
- 二進位制碼
- 二進位制碼
- 8421 BCD碼
- 餘3碼
- 格雷碼
- ASCII碼
- EBCDIC碼
- 程式碼轉換
- 錯誤檢測與糾正碼
- 邏輯閘
- 邏輯閘
- 與門
- 或門
- 非門
- 通用門
- 異或門
- 異或非門
- CMOS邏輯閘
- 使用二極體電阻邏輯的或門
- 與門與或門的比較
- 兩級邏輯實現
- 閾值邏輯
- 布林代數
- 布林代數
- 布林代數定律
- 布林函式
- 德摩根定理
- SOP和POS形式
- POS到標準POS形式
- 最小化技術
- 卡諾圖最小化
- 三變數卡諾圖
- 四變數卡諾圖
- 五變數卡諾圖
- 六變數卡諾圖
- 無關項條件
- 奎因-麥克拉斯基方法
- 最小項和最大項
- 規範式和標準式
- 最大項表示
- 使用布林代數化簡
- 組合邏輯電路
- 數字組合電路
- 數字算術電路
- 多路複用器
- 多路複用器設計流程
- 多路複用器通用門
- 使用4:1多路複用器的2變數函式
- 使用8:1多路複用器的3變數函式
- 多路分解器
- 多路複用器與多路分解器的比較
- 奇偶校驗位發生器和校驗器
- 比較器
- 編碼器
- 鍵盤編碼器
- 優先編碼器
- 譯碼器
- 算術邏輯單元
- 7段LED顯示器
- 程式碼轉換器
- 程式碼轉換器
- 二進位制轉十進位制轉換器
- 十進位制轉BCD轉換器
- BCD轉十進位制轉換器
- 二進位制轉格雷碼轉換器
- 格雷碼轉二進位制轉換器
- BCD轉餘3碼轉換器
- 餘3碼轉BCD轉換器
- 加法器
- 半加器
- 全加器
- 序列加法器
- 並行加法器
- 使用半加器的全加器
- 半加器與全加器的比較
- 使用與非門的全加器
- 使用與非門的半加器
- 二進位制加減法器
- 減法器
- 半減器
- 全減器
- 並行減法器
- 使用兩個半減器的全減器
- 使用與非門的半減器
- 時序邏輯電路
- 數字時序電路
- 時鐘訊號和觸發
- 鎖存器
- 移位暫存器
- 移位暫存器應用
- 二進位制暫存器
- 雙向移位暫存器
- 計數器
- 二進位制計數器
- 非二進位制計數器
- 同步計數器設計
- 同步計數器與非同步計數器的比較
- 有限狀態機
- 演算法狀態機
- 觸發器
- 觸發器
- 觸發器轉換
- D觸發器
- JK觸發器
- T觸發器
- SR觸發器
- 帶時鐘的SR觸發器
- 無時鐘SR觸發器
- 帶時鐘的JK觸發器
- JK觸發器轉T觸發器
- SR觸發器轉JK觸發器
- 觸發方法:觸發器
- 邊沿觸發觸發器
- 主從JK觸發器
- 競爭冒險現象
- A/D和D/A轉換器
- 模數轉換器
- 數模轉換器
- DAC和ADC積體電路
- 邏輯閘的實現
- 用與非門實現非門
- 用與非門實現或門
- 用與非門實現與門
- 用與非門實現或非門
- 用與非門實現異或門
- 用與非門實現異或非門
- 用或非門實現非門
- 用或非門實現或門
- 用或非門實現與門
- 用或非門實現與非門
- 用或非門實現異或門
- 用或非門實現異或非門
- 使用CMOS的與非/或非門
- 使用與非門的全減法器
- 使用2:1多路複用器的與門
- 使用2:1多路複用器的或門
- 使用2:1多路複用器的非門
- 儲存器件
- 儲存器件
- RAM和ROM
- 快取記憶體設計
- 可程式設計邏輯器件
- 可程式設計邏輯器件
- 可程式設計邏輯陣列
- 可程式設計陣列邏輯
- 現場可程式設計門陣列
- 數字電子系列
- 數字電子系列
- CPU架構
- CPU架構
- 數位電子資源
- 數位電子 - 快速指南
- 數位電子 - 資源
- 數位電子 - 討論
使用布林代數化簡
什麼是卡諾圖 (K-Map)?
卡諾圖 (K-Map) 是一種圖形工具,用於簡化以標準形式表示的布林表示式,以獲得其最小形式。
卡諾圖基本上是一個圖表,由相鄰的單元格或方塊組成,每個單元格代表函式變數的特定組合,以和式或積式表示。
卡諾圖中單元格的數量取決於布林函式中變數的數量,即,K-map 有 2n 個相鄰單元格,其中 n 是布林表示式中變數的數量。因此,2變數卡諾圖中的單元格數量為 4 (22),3變數卡諾圖中的單元格數量為 8 (23),4變數卡諾圖中的單元格數量為 16 (24),依此類推。
但是,我們可以對任意數量的變數使用卡諾圖。但是,對於簡化超過 5 個變數的布林函式,它會變得繁瑣。
現在,讓我們討論使用卡諾圖簡化布林表示式的過程。
使用卡諾圖簡化布林表示式的步驟
使用卡諾圖簡化給定布林表示式涉及以下步驟:
步驟 1 - 根據給定布林函式中變數的數量選擇卡諾圖。
步驟 2 - 識別最小項(在 SOP 形式中)或最大項(在 POS 形式中)。
步驟 3 - 對於SOP(積之和)形式,根據給定函式的最小項在卡諾圖的單元格中放入 1。讀取卡諾圖如下:
- 讀取卡諾圖中與任何其他 1 不相鄰的 1。這些 1 是孤立的最小項,因此需要按原樣讀取,因為它們不能組合成組。
- 讀取卡諾圖中僅與另一個 1 相鄰的 1。將此類最小項組合成 2-方塊。
- 讀取卡諾圖中相鄰 1 的四元組(4-方塊)、八元組(8-方塊)等等,即使它們有一些 1 已經在其他組中組合。唯一需要注意的是,它們必須幾何地形成矩形或正方形。
- 讀取卡諾圖中尚未分組的任何 1,如果可能,將它們分組到更大的正方形或矩形中。
- 最後,獲得所有組的乘積項,然後將它們加起來形成最小的 SOP 表示式。
對於POS(和之積)形式,根據給定函式的最大項在卡諾圖的單元格中放入 0。讀取卡諾圖如下:
- 讀取卡諾圖中與任何其他 0 不相鄰的 0。這些 0 是孤立的最大項,因此需要按原樣讀取,因為它們不能組合成組。
- 讀取卡諾圖中僅與另一個 0 相鄰的 0。將此類最大項組合成 2-方塊。
- 讀取卡諾圖中相鄰 0 的四元組(4-方塊)、八元組(8-方塊)等等,即使它們有一些 0 已經在其他組中組合。唯一需要注意的是,它們必須幾何地形成矩形或正方形。
- 讀取卡諾圖中尚未組合的任何 0,如果可能,將它們組合到更大的正方形或矩形中。
- 最後,獲得所有組的和項,然後將它們相乘形成最小的 POS 表示式。
讓我們藉助一些已解決的示例來了解使用卡諾圖簡化布林表示式的過程。
示例 1
使用卡諾圖簡化以下 SOP 形式的 3 變數布林函式。
$$\mathrm{F(P, \: Q, \:R) \: = \: \sum m ( 0, \: 1, \: 3, \: 5, \: 7)}$$
解答
給定布林函式的卡諾圖表示如圖 1 所示。

根據以下步驟簡化此卡諾圖:
- 沒有孤立的 1。
- 最小項 m1 與最小項 m3、m5 和 m7 形成一個 4-方塊。將其組合並讀取為 R。
- 最小項 m0 與最小項 m1 形成一個 2-方塊。將其組合並讀取為 $\mathrm{\bar{P} \: \bar{Q}}$
- 以 SOP 形式編寫所有乘積項。
因此,簡化的 SOP 表示式為:
$$\mathrm{F \: = \: R \: + \: \bar{P}\bar{Q}}$$
示例 2
使用卡諾圖簡化以下 POS 形式的 3 變數布林函式。
$$\mathrm{F(A, \: B, \: C) \: = \: \Pi \: M(1, \: 2, \: 4, \: 6)}$$
解答
給定布林函式的 POS 卡諾圖表示如圖 2 所示。

根據以下步驟簡化此 POS 卡諾圖:
- 最大項 M1 沒有相鄰項。因此,按原樣保留它並將其讀取為 $\mathrm{(A \: + \: B \: + \: \bar{C})}$.
- 最大項 M2 只有一個相鄰項 M6。因此,將最大項 M2 擴充套件為與最大項 M6 的 2-方塊,並將 2-方塊讀取為 $\mathrm{(\bar{B} \: + \: C)}$。
- 最大項 M4 也只有一個相鄰項 M6。因此,將最大項 M4 擴充套件為與最大項 M6 的 2-方塊,並將 2-方塊讀取為 $\mathrm{(\bar{A} \: + \: C)}$。
- 以 POS 形式編寫所有和項。
因此,簡化的 POS 表示式為:
$$\mathrm{F \: = \: (A \: + \: B \: + \: \bar{C}) \: (\bar{B} \: + \: C) \: (\bar{A} \: + \: C)}$$
示例 3
簡化以下 SOP 形式的 4 變數布林函式以獲得最小的 SOP 表示式。
$$\mathrm{F(A, \: B, \: C, \:D) \: = \: \sum \: m( 0,\: 1, \:3, \: 5, \: 7, \: 6, \: 10, \: 13, \: 14, \: 15)}$$
解答
給定布林函式的 SOP 卡諾圖表示如圖 3 所示。

根據以下步驟簡化此 SOP 卡諾圖:
- 沒有孤立的 1。
- 最小項 m1 有三個相鄰項 m3、m5 和 m7。因此,將 m1 擴充套件為與最小項 m3、m5 和 m7 的 4-方塊,並將 4-方塊讀取為 $\mathrm{\bar{A}D}$。
- 最小項 m5 有三個相鄰項 m7、m13 和 m15。將 m5 擴充套件為與最小項 m7、m13 和 m15 的 4-方塊,並將 4-方塊讀取為 BD。
- 最小項 m6 也具有三個相鄰項 m7、m14 和 m15。將 m6 擴充套件為與最小項 m7、m14 和 m15 的 4-方塊,並將 4-方塊讀取為 BC。
- 最小項 m10 只有一個相鄰項 m14。將 m10 擴充套件為與最小項 m14 的 2-方塊,並將 2-方塊讀取為 $\mathrm{AC\bar{D}}$。
- 最小項 m0 也只有一個相鄰項 m1。將 m0 擴充套件為與最小項 m1 的 2-方塊,並將 2-方塊讀取為 $\mathrm{\bar{A}\bar{B}\bar{C}}$。
- 以 SOP 形式編寫所有乘積項。
因此,簡化的 SOP 表示式為:
$$\mathrm{F \: = \: \bar{A}D \: + \: BD \: + \: BC \: + \: AC\bar{D} \: + \: \bar{A}\bar{B}\bar{C}}$$
結論
透過這種方法,我們可以使用卡諾圖(K-map)簡化給定的布林表示式,得到最小表示式。嘗試解決以下練習題以更好地理解。
題 1 − 將以下三變數布林函式化簡為SOP形式,得到其最小表示式。
$$\mathrm{F(A, \: B, \: C) \: = \: \sum \: m(1, \: 2, \: 4, \: 5, \: 7)}$$
題 2 − 將以下四變數布林函式化簡為SOP形式,得到其最小布爾表示式。
$$\mathrm{F(A, \: B, \: C, \: D) \: = \: \sum \: m(0, \: 1, \: 2, \: 4, \: 5, \: 7, \: 8, \: 9, \: 10, \: 12, \: 14, \: 15)}$$