邏輯函數
邏輯函數
邏輯函數,是一類返回值為邏輯值true或邏輯值false的函數。
true:代表判斷後的結果是真的,正確的,也可以用1表示;
徠false:代表判斷後的結果是假的,錯誤的,也可以用0表示。
邏輯函數定義表達式為:
其中:A,A,...,A為輸入邏輯變數,取值是0或1;
F為輸出邏輯變數,取值是0或1;
F稱為A,A,...,A的輸出邏輯函數。
邏輯函數有“最小項之和”及“最大項之積”兩種標準形式。
按一定邏輯規律進行運算的代數。與普通代數不同,布爾代數中的變數是二元值的邏輯變數。
採用一種表格來表示邏輯函數的運算關係,其中輸入部分列出輸入邏輯變數的所有可能組合,輸出部分給出相應的輸出邏輯變數值。
採用規定的圖形符號,來構成邏輯函數運算關係的網路圖形。
卡諾圖是一種幾何圖形,可以用來表示和簡化邏輯函數表達式。
一種表示輸入輸出變數動態變化的圖形,反映了函數值隨時間變化的規律。
是早期可編程邏輯器件中直觀描述邏輯函數的一種方法。
是採用計算機高級語言來描述邏輯函數並進行邏輯設計的一種方法,它應用於可編程邏輯器件中。目前採用最廣泛的硬體設計語言有ABLE-HDL、VHDL等。
1、布爾表達式
以三變數為例,布爾表達式為
F=ABC
此式說明:當邏輯變數A、B、C同時為1時,邏輯函數輸出F才為1。其他情況下,F均為0。
工程應用中與運算用與門電路來實現。邏輯圖符和真值表如下所示:
三元變數與運算真值表
輸入 輸出
A B C F
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 0
1 0 0 0
1 0 1 0
1 1 0 0
1 1 1 1
推廣到n個邏輯變數情況,與運算的布爾代數表達式為:
F=AAA....A
2、計算機語言表示法:AND
在所有參數的邏輯值為真時返回TRUE(真);只要有一個參數的邏輯值為假,則返回FALSE(假)。
語法表示為:AND(Logical,logical,…)。參數Logical,logical,…為待檢驗的1~30個邏輯表達式,它們的結論或為TRUE(真)或為FALSE(假)。參數必須是邏輯值或者包含邏輯值的數組或引用,如果數組或引用內含有文字或空白單元格,則忽略它的值。如果指定的單元格區域內包括非邏輯值,AND將返回錯誤值“#VALUE!”。
1、布爾表達式
仍以三變數為例,布爾代數表達式為:
F=A+B+C
此式說明,當邏輯變數A、B、C中任何一個為1時,邏輯函數F輸出等於1。
工程應用中,或運算用邏輯或門電路來實現。邏輯圖符和真值表如下所示:
三元變數或運算真值表
輸入 輸出
A B C F
0 0 0 0
0 0 1 1
0 1 0 1
0 1 1 1
1 0 0 1
1 0 1 1
1 1 0 1
1 1 1 1
推廣到n個邏輯變數情況,或運算的布爾代數表達式為:
F=A+A+A+...+A
2、計算機語言表示法:OR
在所有參數中的任意一個邏輯值為真時即返回TRUE(真)。
語法表示為:OR(logical1,logical2,...)。參數Logical1,logical2,...是需要進行檢驗的1至30個邏輯表達式,其結論分別為TRUE或FALSE。如果數組或引用的參數包含文本、數字或空白單元格,它們將被忽略。如果指定的區域中不包含邏輯值,OR函數將返回錯誤#VALUE!。
實例:如果A1=6、A2=8,則公式“=OR(A1+A2>A2,A1=A2)”返回TRUE;而公式“=OR(A1>A2,A1=A2)”返回FALSE。
1、布爾表達式
布爾代數表達式為:
此式說明:輸出變數是輸入變數的相反狀態。
工程應用中,非運算用非門電路(反相器)來實現。其邏輯圖符輸出端的小圓圈表示“非”。非門的真值表只有兩種組合。
2、計算機語言表示法:NOT
用於求出一個邏輯值或邏輯表達式的相反值。如果您要確保一個邏輯值等於其相反值,就應該使用NOT函數。語法表示為:NOT(logical)
參數Logical是一個可以得出TRUE或FALSE結論的邏輯值或邏輯表達式。如果邏輯值或表達式的結果為FALSE,則NOT函數返回TRUE;如果邏輯值或表達式的結果為TRUE,那麼NOT函數返回的結果為FALSE。
與非運算是先與運算后非運算的組合。以二變數為例,布爾代數表達式為:
工程應用中,與非運算用邏輯與非門電路來實現。邏輯圖符和真值表如下所示:
與非運算真值表
輸入 輸出
A B F
0 0 1
0 1 1
1 0 1
1 1 0
從真值表可以看出,只有輸入A、B同時為1時,輸出F才為0。對與非門來講,這種組合是有效工作狀態。
或非運算是先或運算后非運算的組合。以二變數A、B為例,布爾代數表達式為:
工程應用中,或非運算用邏輯或非門電路來實現。邏輯圖符和真值表如下所示:
或非運算真值表
與或非運算是“先與后或再非”三種運算的組合。以四變數為例,布爾表達式為:
表達式說明:當輸入變數A、B同時為1或C、D同時為1時,輸出F才等於0。與或非運算是先或運算后非運算的組合。
在工程應用中,與或非運算由與或非門電路來實現,其邏輯圖符如下所示:
思考題:你能寫出四變數與或非邏輯真值表嗎?
布爾表達式為:
F=A⊕B
符號“⊕”表示異或運算,即兩個輸入變數值不同時F=1。
工程應用中,異或運算用異或門電路來實現.:
布爾徠表達式為:
F=A⊙B= A⊕B B
符號“⊙”表示同或運算,即兩個輸入變數值相同時F=1。
工程應用中,同或運算用同或門電路來實現,它等價於異或門輸出加非門。
小結:在基本邏輯運算中,與、或、非三種運算是最本質的,其他邏輯運算是其中兩種或三種的組合。
門電路的輸入、輸出電壓的高電平定義為邏輯“1”,低電平定義為邏輯“0”。
門電路的輸入、輸出電壓的低電平定義為邏輯“1”,高電平定義為邏輯“0”。
同一個邏輯門電路,在正邏輯定義下如實現與門功能,在負邏輯定義下則實現或門功能。
數字系統設計中,不是採用正邏輯就是採用負邏輯,而不能混合使用。