邏輯運算檢視原始碼討論檢視歷史
邏輯運算 | |
---|---|
邏輯運算,又稱布爾運算 布爾用數學方法研究邏輯問題,成功地建立了邏輯演算。他用等式表示判斷,把推理看作等式的變換。這種變換的有效性不依賴人們對符號的解釋,只依賴於符號的組合規律 。[1]
這一邏輯理論人們常稱它為布爾代數。20世紀30年代,邏輯代數在電路系統上獲得應用,隨後,由於電子技術與計算機的發展,出現各種複雜的大系統,它們的變換規律也遵守布爾所揭示的規律。邏輯運算 (logical operators) 通常用來測試真假值。最常見到的邏輯運算就是循環的處理,用來判斷是否該離開循環或繼續執行循環內的指令。
基本概念
1.邏輯常量與變量:邏輯常量只有兩個,即0和1,用來表示兩個對立的邏輯狀態。邏輯變量與普通代數一樣,也可以用字母、符號、數字及其組合來表示,但它們之間有着本質區別,因為邏輯常量的取值只有兩個,即0和1,而沒有中間值。[2]
2.邏輯運算:在邏輯代數中,有與、或、非三種基本邏輯運算。表示邏輯運算的方法有多種,如語句描述、邏輯代數式、真值表、卡諾圖等。
3.邏輯函數:邏輯函數是由邏輯變量、常量通過運算符連接起來的代數式。同樣,邏輯函數也可以用表格和圖形的形式表示。
4.邏輯代數:邏輯代數是研究邏輯函數運算和化簡的一種數學系統。邏輯函數的運算和化簡是數字電路課程的基礎,也是數字電路分析和設計的關鍵。
5.運用在NOIP2015沒有出現邏輯運算
表示方法
"∨" 表示"或" (邏輯加法)
"∧" 表示"與". (邏輯乘法)
"┐"表示"非". (邏輯否定)
"=" 表示"等價".
1和0表示"真"和"假"
(還有一種表示,"+"表示"或", "·"表示"與")
運算符號
各種編程語言中的邏輯運算符 語言
C
Pascal
Java
VB C++ 與
&
and
&
and and 或 && 或
|
or
|
or or 或 || 非
!
not
!
not not 或 !
運算規則
A......B..................A And B....A Or B........A Xor B
0......0.......................0..............0................0
1......0.......................0..............1................1
0......1.......................0..............1................1
1......1.......................1..............1................0
簡單的說
And:與運算。只有同為真時才為真,近似於乘法。
Or:或運算。只有同為假時才為假,近似於加法。
Xor:異或運算。相同為假,不同為真。
定義
真真得真(與運算),假假得假(或運算),同假異真(異或運算)。
基本公式
注:此處"+"表示"或"," · " 表示"與"," ' "表示"非"
(1) 1' = 0; 0' = 1
(2) A + 1 = 1
(3) A + 0 = A
(4) A + A = A
(5) A + A' = 1
(6) A · 0 = 0
(7) A · 1 = A
(8) A · A = A
(9) A · A' = 0
(10) A + B = B + A
(11) A · B = B · A
(12) A + (B + C) = (A + B) + C
(13) A · (B · C) = (A · B) · C
(14) A · (B + C) = A · B + A · C
(15) A + (B · C) = (A + B) · (A + C)
(16) (A')' = A
(17) (A + B)' = A' · B'
(18) (A · B)' = A' + B'
邏輯變量之間的運算稱為邏輯運算。二進制數1和0在邏輯上可以代表"真"與"假"、"是"與"否"、"有"與"無"。這種具有邏輯屬性的變量就稱為邏輯變量。
計算機的邏輯運算和算術的邏輯運算的主要區別是:邏輯運算是按位進行的,位與位之間不像加減運算那樣有進位或借位的聯繫。
邏輯運算主要包括三種基本運算:邏輯加法(又稱"或"運算)、邏輯乘法(又稱"與"運算)和邏輯否定(又稱"非"運算)。此外,"異或"運算也很有用。
邏輯加法
邏輯加法("或"運算)通常用符號"+"或"∨"來表示。邏輯加法運算規則如下:
0+0=0, 0∨0=0
0+1=1, 0∨1=1
1+0=1, 1∨0=1
1+1=1, 1∨1=1
從上式可見,邏輯加法有"或"的意義。也就是說,在給定的邏輯變量中,A或B只要有一個為1,其邏輯加的結果為1;兩者都為1則邏輯加為1。
邏輯乘法
邏輯乘法("與"運算)通常用符號"×"或"∧"或"·"來表示。邏輯乘法運算規則如下:
0×0=0, 0∧0=0, 0·0=0
0×1=0, 0∧1=0, 0·1=0
1×0=0, 1∧0=0, 1·0=0
1×1=1, 1∧1=1, 1·1=1
不難看出,邏輯乘法有"與"的意義。它表示只當參與運算的邏輯變量都同時取值為1時,其邏輯乘積才等於1。
邏輯否定
邏輯非運算又稱邏輯否運算。其運算規則為:
┐0=1 (非0等於1)
┐1=0 (非1等於0)
異或運算
異或運算(半加運算)通常用符號"⊕"表示,其運算規則為:
0⊕0=0 0同0異或,結果為0
0⊕1=1 0同1異或,結果為1
1⊕0=1 1同0異或,結果為1
1⊕1=0 1同1異或,結果為0
即兩個邏輯變量相異,輸出才為1