邏輯表達式
數理科學中的術語
邏輯運算又稱布爾運算。布爾用數學方法研究邏輯問題,成功建立了邏輯演算。他用等式表示判斷,把推理看作等式的變換。這種變換的有效性不依賴人們對符號的解釋,只依賴於符號的組合規律。這一邏輯理論人們常稱它為布爾代數。20世紀30年代,邏輯代數在電路系統上獲得應用,隨後,由於電子技術與計算機的發展,出現各種複雜的大系統,它們的變換規律也遵守布爾所揭示的規律。
用邏輯運算符將關係表達式或邏輯量連接起來的有意義的式子稱為邏輯表達式。邏輯表達式的值是一個邏輯值,即“true”或“flase”。C語言編譯系統在給出邏輯運算結果時,以數字1表示“真”,以數字0表示“假”,但在判斷一個量是否為“真”時,以非0表示“真”,以0表示“假”。
可以將邏輯表達式的運算結果(0或1)賦給整型變數或字元型變數。
c語言中,等於是“==”,不等於是“!=”。
當此邏輯表達式為“真”時,就可以認為x等於5.003。
由於浮點數在計算機中不能非常準確地表示,所以,判斷兩個浮點數是否相同時,通常不使用關係運算符“等於”(==),而是利用區間判斷方法來實現。為了判斷x是否等於5.003,可利用如下邏輯表達式:
當此邏輯表達式為“真”時,就可以認為x等於5.003
邏輯及性質保真性:所有變數的真值皆為“真”的命題在邏輯或運算后的結果為真。保假性:所有變數的真值皆為“假”的命題在邏輯或運算后的結果為假。
在通常的數字邏輯電路的設計、教學中,用布爾代數法進行邏輯表達式的運算及簡化時人們一般需要掌握布爾代數的基本定律、結合律、交換律、分配律、互補律、0一1律、吸收律、還原律、狄摩根定理、分解定理等;以及一些規則,例如代入規則、反演規則、對偶規則及一些常用的恆等式等。簡化時還可能要用到並項法、吸收法、消去法及配項法、卡諾圖等等技巧。總之能否得到例如最簡的邏輯表達式,全憑經驗及邏輯運算的熟練程度。特別是在進行與或表達式和與異表達式之間的轉換與簡化時通常無一般規律可循,較不易把握。利用卡諾圖雖然對於變數較少晰U如不多於4個變數的情況)的與一或、或與表達的簡化較有效,但對於較多變數以及與或表達式和與異表達式之間的轉換與簡化似乎也有點不知所措。
張文龍在設計實踐和教學中發現,如果使用推廣的吸收律、廣義還原律和分解定理等有關的公式,將能更簡便地簡化邏輯表達式,往往使得似乎無從下手的邏輯簡化問題能找到一種有效的出路。
廣義吸收律:
(1)與門
與門(英語:ANDgate)又稱“與電路”、邏輯“積”、邏輯“與”電路。是執行“與”運算的基本邏輯門電路。有多個輸入端,一個輸出端。當所有的輸入同時為高電平(邏輯1)時,輸出才為高電平,否則輸出為低電平(邏輯0)。
邏輯表達式:
(2)或門
或門(ORgate),又稱或電路、邏輯和電路。如果幾個條件中,只要有一個條件得到滿足,某事件就會發生,這種關係叫做“或”邏輯關係。具有“或”邏輯關係的電路叫做或門。或門有多個輸入端,一個輸出端,只要輸入中有一個為高電平時(邏輯“1”),輸出就為高電平(邏輯“1”);只有當所有的輸入全為低電平(邏輯“0”)時,輸出才為低電平(邏輯“0”)。
邏輯表達式:
(3)非門
非門(英文:NOTgate)又稱非電路、反相器、倒相器、邏輯否定電路,簡稱非門,,是邏輯電路的基本單元。非門有一個輸入和一個輸出端。當其輸入端為高電平(邏輯1)時輸出端為低電平(邏輯0),當其輸入端為低電平時輸出端為高電平。也就是說,輸入端和輸出端的電平狀態總是反相的。非門的邏輯功能相當於邏輯代數中的非,電路功能相當於反相,這種運算亦稱非運算。
邏輯表達式:
(4)與非門
與非門(英語:NANDgate)是數字電路的一種基本邏輯電路。若當輸入均為高電平(1),則輸出為低電平(0);若輸入中至少有一個為低電平(0),則輸出為高電平(1)。與非門可以看作是與門和非門的疊加。
邏輯表達式:
(5)或非門
或非門(英語:NORgate)是數字邏輯電路中的基本元件,實現邏輯或非功能。有多個輸入端,1個輸出端,多輸入或非門可由2輸入或非門和反相器構成。只有當兩個輸入A和B為低電平(邏輯0)時輸出為高電平(邏輯1)。也可以理解為任意輸入為高電平(邏輯1),輸出為低電平(邏輯0)。
邏輯表達式:
(6)異或門
異或門(英語:Exclusive-ORgate,簡稱XORgate,又稱EORgate、ExORgate)是數字邏輯中實現邏輯異或的邏輯門。有多個輸入端、1個輸出端,多輸入異或門可由2輸入異或門構成。若兩個輸入的電平相異,則輸出為高電平1;若兩個輸入的電平相同,則輸出為低電平0。亦即,如果兩個輸入不同,則異或門輸出高電平。
邏輯表達式:
(7)同或門
同或門(英語:XNORgate或equivalencegate)也稱為異或非門,是數字邏輯電路的基本單元,有2個輸入端、1個輸出端。當2個輸入端中有且只有一個是低電平(邏輯0)時,輸出為低電平。亦即當輸入電平相同時,輸出為高電平(邏輯1)。