跳至內容

卡諾圖

出自Taiwan Tongues 台語維基
這是此頁批准,以及是最近的修訂。

佇邏輯代數內底,卡諾圖(Karnaugh map)是真值表的一个變形,伊會當共有 _ n _ 個變數的邏輯函式的 $ 二 ^ { n } $ 上細項組織佇咧予定的長篙形表格中,同時為相鄰上細項(相鄰佮項)運用鄰接律化簡單提供著直觀的圖形工具。猶毋過,若是需要處理的邏輯函式的自變數較濟(有五个抑是閣較濟的時陣,現此時有的項就真歹輾矣), 那麼卡諾圖的行列數將迅速增加,予圖形閣較複雜。: 一百八十九卡諾圖是貝爾實驗室的電信工程師莫里斯 ・ 卡嗎(Maurice Karnaugh)佇一九五三年發明的。

變數卡諾圖

  • 表示各上細項的 $ 二 ^ { n } $(_ n _-變數)細格仔,排列呈矩形。
  • 細格揤「格雷碼」排列,保證上細項間「幾何相鄰」佮「邏輯相鄰性」的統一。(幾何相鄰有「內相鄰」「外相鄰」和「中心對稱」)

函式卡諾圖

  • 上細項的($ \ sum _ { } m $): 共函式包含的所有的上細項,以「一」填入變數卡諾圖對應編號的小格內。
  • 上大項($ \ prod _ { } M $): 共函式包含的所有上大項,以「零」填入變數卡諾圖對應編號的小格內。

用卡諾圖化簡邏輯函式的步數

  • 若表達式為上小項的達式,會當直接填入卡諾圖
  • 表達式毋是上小項表達式,猶毋過「佮—抑是表達式」,會當共變做上細項的表現式,才添入卡諾圖。嘛會當直接添入去。
  • 敆做伙的上細項,根據下述原則畫箍仔
  • 盡量畫大圈,猶毋過逐家箍仔內底干焦會當含 $ 二 ^ { n } $(n=零 , 一 , 二 , 三……)個相鄰項。愛特別注意對邊相鄰性佮四角相鄰性。
  • 箍仔的數量少。
  • 卡諾圖中所有取值為一的方格攏愛被箍過,也袂當落勾去取做一項的上細項。
  • 佇新畫的包圍箍仔內底上無嘛愛含有一个無被箍過的一方格,抑無該包圍箍仔是加工的。
  • 寫出化簡了後的表達式。每一个箍仔寫一个上簡單佮項,規則是講,取值為 l 變數用原變數表示,取值為零的變數用反變數表示,共遮的變數相佮。了後共所有佮項進行邏輯加,即得上簡單佮—抑是表達式。

咧進行簡單的時陣,若用圖內底真值做零的項閣較方便,會當用𪜶來處理,方法佮真值取仝款,只是結果欲閣做一擺求反。

範例

二變數卡諾圖範例

  • * * * * * * * * * * * * * * *

四變數卡諾圖範例

一个四變數卡諾圖的例:

阮會當用兩个無仝的寫法,佮四个無仝款的布林變數 A , B , C , D 佮𪜶的顛倒反值,來表示仝一个猶未化簡的布林代數:

  • $ f ( A , B , C , D )=\ sum _ { } m _ { i } , i \ in \ { 六 , 八 , 九 , 十 , 十一 , 十二 , 十三 , 十四 \ } $ 這乎 $ { } m _ { i } $ 是卡諾圖的上細項(即圈出來的值 $ i $ 佇真值表上顯示做一)。
  • $ f ( A , B , C , D )=\ prod _ { } M _ { i } , i \ in \ { 零 , 一 , 二 , 三 , 四 , 五 , 七 , 十五 \ } $ 這乎 $ M _ { i } $ 是卡諾圖的上大項(即圈出來的值 $ i $ 佇真值表上顯示做零)。

參考文獻

引註

來源

期刊文章

  • Karnaugh , Maurice . The Map Method for Synthesis of Combinational Logic Circuits . Transactions of American Institute of Electrical Engineers part I . November 一千九百五十三 ,七十二( 九 ) : 五百九十三–五百九十九 .