版權(quán)歸原作者所有,如有侵權(quán),請聯(lián)系我們

[科普中國]-邏輯或

科學百科
原創(chuàng)
科學百科為用戶提供權(quán)威科普內(nèi)容,打造知識科普陣地
收藏

邏輯運算符包含邏輯與、或、異或、非等邏輯運算符。1

如果一個操作數(shù)或多個操作數(shù)為 true,則邏輯或運算符返回布爾值 true;只有全部操作數(shù)為false,結(jié)果才是 false。2

定義如果任一操作數(shù)或兩個操作數(shù)為true,則邏輯“或”運算符 (||) 返回布爾值true;否則返回false。操作數(shù)在計算之前隱式轉(zhuǎn)換為類型bool,結(jié)果的類型為bool。邏輯“或”具有從左向右的關(guān)聯(lián)性。3

or運算符是||的等效文本。

邏輯“或”運算符的操作數(shù)不需要是同一類型,但是它們必須是整型或指針類型。操作數(shù)通常為關(guān)系或相等表達式。

第一個操作數(shù)將完全計算,并且在繼續(xù)計算邏輯“或”表達式之前將完成所有副作用。

僅當?shù)谝粋€操作數(shù)的計算結(jié)果為 false (0) 時計算第二個操作數(shù)。在邏輯“或”表達式為 true 時,這將消除對第二個操作數(shù)的不必要的計算。

在決定一事物的若干條件中,只要有一個條件能滿足時,結(jié)果就會出現(xiàn);只有當所有條件都不滿足是,結(jié)果才不出現(xiàn),這種因果關(guān)系就稱為“邏輯或”。

如圖所示兩個開關(guān)并聯(lián)電燈電路中,兩個開關(guān)S1、S2中只要有一個閉合時,電燈EL就會亮起;只有兩個開關(guān)都不閉合,電燈EL才不會亮。4

真值表A或B的真值表(也寫作A∨****B(邏輯學),A || B(計算機科學),或A + B(電子學))。4

|| ||

運算性質(zhì)邏輯或滿足以下性質(zhì):5

結(jié)合律: A||(B||C)≡ (A||B)||C

交換律: A||B ≡ B||A

分配律: A||(B∧C) ≡ ((A||B)∧(A||C))

A∧(B||C) ≡ ((A∧B)||(A∧C))

A||(B≡C) ≡ ((A||B)≡(A||C))

冪等律: A||A ≡ A

單調(diào)性: (A→B)→((C||A)→(C||B))

(A→B)→((A||C)→(B||C))

保真性: 所有變量的真值皆為“真”的命題在邏輯或運算后的結(jié)果為真。

保假性: 所有變量的真值皆為“假”的命題在邏輯或運算后的結(jié)果為假。

示例0 || 0 = 0;

1 || 0 = 1;

0 || 1 = 1;

1 || 1 = 1;

應用拓展C/C++中|與|| 的區(qū)別:

(1)||:表示邏輯或

邏輯或,是邏輯運算符,符號是“||”。表示當兩個條件中有任一個條件滿足,“邏輯或”的運算結(jié)果就為“真”。

(2)|:表示按位或

按位或運算符“|”是雙目運算符。其功能是參與運算的兩數(shù)各對應的二進位相或。只要對應的二個二進位有一個為1時,結(jié)果位就為1。3

128: (0001 0000 0000)

127: (0000 1111 1111) (高位用0補齊)

按位或就是(0001 1111 1111)=255。

本詞條內(nèi)容貢獻者為:

齊臣杰 - 研究員 - 北京信息科技大學