基本介紹
變數是代數學中的基礎元素,其他運算、規則等都是圍繞變數展開的。
邏輯代數中的變數稱為
邏輯變數。在代數學中,變數可取值的範圍很廣,可以是實數,也可以是複數,而邏輯變數的取值只有兩種:
邏輯0和
邏輯1。邏輯0和邏輯1並不表示具體的數值,而是表示相互矛盾、相互對立的兩種邏輯狀態。因此,邏輯0和邏輯1之間並不存在大小關係,沒有數值意義,一般情況下使用大寫英文字母來表示邏輯變數,如A、B、C等。
在
數字電路中,邏輯0和邏輯1可以表示電平的高低、脈衝的有無、電晶體的飽和截止等。邏輯0和邏輯1具體表示什麼是由設計者定義的,也就是說邏輯0既可以表示有也可以表示無,只要在定義時保證邏輯0和邏輯1所表示的事物是相互對立、相互矛盾的關係,邏輯0和邏輯1本身並沒有好壞、善惡之分。
基本邏輯運算
邏輯運算指對邏輯量施加的操作。基本邏輯運算僅有3種:“與”運算、“或”運算和“非”運算,分別用“
·”、“+”、“一”表示。邏輯運算的結果仍為邏輯量,運算法則及其含義如表1所列。
用邏輯變數表示的3種基本邏輯運算如下:
由於邏輯變數的值可以變化,故運算結果由參與運算的邏輯變數的取值而定。例如,與運算A·B.當A=1,B=0時,結果為1·0=0;當A=1,B=1時,結果為1·1=1;……
在日常生活中,這3種邏輯關係大量存在。例如,用兩個開關並聯去控制一盞電燈,由電路原理可知,只有兩個開關同時斷開,燈才能滅,則燈的亮滅與兩個開關之間的邏輯關係就是“或”的關係。
儘管構成
邏輯代數系統的要件極為簡單,但卻能描述數字系統中任何複雜的邏輯電路。這是因為:首先邏輯電路的信號要么為低電平,要么為高電平,可以表示成邏輯變數;其次由於邏輯量只有兩種值,則3種邏輯運算足以完備地描述其邏輯關係;再者任何複雜的邏輯功能都是經過3種邏輯運算綜合形成的。3種基本邏輯運算的法則及含義如表1所列.。
運算名稱 | 法 則 | 含義 |
與 | | 參加運算的量,只有兩個同時為“1”時,運算結果為“1”,否則運算結果為“0” |
或 | | 參加運算的量,只有兩個同時為“0”時,運算結果才為“0”,否則運算結果為“1” |
非 | | 運算結果取相反的量 |
邏輯表達式
邏輯表達式是由邏輯量(包括變數與常量)和基本邏輯運算符所構成的式子。照此定義。前面提到的基本邏輯運算A
·B、A+B、
都是邏輯表達式。再例如
也是一個邏輯表達式。
為簡便起見,當幾個邏輯量作“與”運算時,可以省略運算符號“·”。於是,上式可記為:
在邏輯表達式中,3種邏輯運算的優先順序為:“非”運算最高,其次是“與”運算,“或”運算最低。存遵守這一優先原則的基礎上,按從左到右的次序進行計算。對於式(1),先求A、B的“與”運算,得中間結果AB;再對A、B分別作“非”運算後相“與”,得中間結果
,最後進行“或”運算。
可以通過添加括弧來改變優先順序。例如,將式(1)改為
,則應先計算括弧中的式子
,顯然,改動以後的運算結果與式(1)不同。
由於“非”運算的優先權最高,因此“非”運算符號下的表達式應優先計算。例如,表達式
,相當於
,要先算
,再對計算結果求“非”。