卡諾圖(Karnaugh map, 簡稱K-map)是一種用於簡化布爾函數的圖形化方法,主要由美國數學家莫里斯·卡諾(Maurice Karnaugh)於1953年提出。
卡諾圖通過將邏輯函數的最小項表達式中的各項填入一箇方格圖中,每個小方格代表邏輯函數的一箇最小項。這種方格圖被稱爲卡諾圖,它是一種平面方格圖,其中相鄰兩個方格的兩組變量取值相比,只有一箇變量的取值發生變化。通過尋找相鄰方格之間的特定模式,並將具有相同輸出的方格合併,可以實現布爾函數的最小化,從而得到最簡潔的布爾函數表達式,減少邏輯門的數量和複雜度。
卡諾圖在數字邏輯電路設計中有廣泛的應用,特別是在布爾函數的簡化和優化方面,它可以幫助設計者減少邏輯門的數量,簡化電路結構,提高電路的性能和可靠性。卡諾圖也常用於計算機組織與體系結構、數字信號處理、通信系統等領域中的邏輯設計和優化問題。