邏輯與,符號(hào)為“&&”,只有兩個(gè)操作數(shù)都是真,結(jié)果才是真。 邏輯與操作屬于短路操作,既如果第一個(gè)操作數(shù)能夠決定結(jié)果,那么就不會(huì)對(duì)第二個(gè)操作數(shù)求值。對(duì)于邏輯與操作而言,如果第一個(gè)操作數(shù)是假,則無論第二個(gè)操作數(shù)是什么值,結(jié)果都不可能是真,相當(dāng)于短路了右邊。12
簡(jiǎn)介“&&” "·"表示與 (邏輯與)是邏輯運(yùn)算符。(pascal中為and)"and"
“邏輯與”相當(dāng)于生活中說的“并且”,就是兩個(gè)條件都同時(shí)成立的情況下“邏輯與”的運(yùn)算結(jié)果才為“真”。
邏輯運(yùn)算符把各個(gè)運(yùn)算的變量(或常量)連接起來組成一個(gè)邏輯表達(dá)式。
邏輯運(yùn)算符有3個(gè):“∧” "·""and"(邏輯與) 。在位運(yùn)算里面還有 &(位與)、|(位或)的運(yùn)算、”xor"(異或)等。2
邏輯運(yùn)算邏輯運(yùn)算用來判斷一件事情是“對(duì)”的還是“錯(cuò)”的,或者說是“成立”還是“不成立”,判斷的結(jié)果是二值的,即沒有“可能是”或者“可能不是”,這個(gè)“可能”的用法是一個(gè)模糊概念,在計(jì)算機(jī)里面進(jìn)行的是二進(jìn)制運(yùn)算,邏輯判斷的結(jié)果只有二個(gè)值,稱這二個(gè)值為“邏輯值”,用數(shù)的符號(hào)表示就是“1”和“0”。其中“1”表示該邏輯運(yùn)算的結(jié)果是“成立”的,如果一個(gè)邏輯運(yùn)算式的結(jié)果為“0”,那么這個(gè)邏輯運(yùn)算式表達(dá)的內(nèi)容“不成立“。
邏輯運(yùn)算又稱布爾運(yùn)算
布爾用數(shù)學(xué)方法研究邏輯問題,成功地建立了邏輯演算。他用等式表示判斷,把推理看作等式的變換。這種變換的有效性不依賴人們對(duì)符號(hào)的解釋,只依賴于符號(hào)的組合規(guī)律。這一邏輯理論人們常稱它為布爾代數(shù)。20世紀(jì)30年代,邏輯代數(shù)在電路系統(tǒng)上獲得應(yīng)用,隨后,由于電子技術(shù)與計(jì)算機(jī)的發(fā)展,出現(xiàn)各種復(fù)雜的大系統(tǒng),它們的變換規(guī)律也遵守布爾所揭示的規(guī)律。
邏輯運(yùn)算 (logical operators) 通常用來測(cè)試真假值。最常見到的邏輯運(yùn)算就是循環(huán)的處理,用來判斷是否該離開循環(huán)或繼續(xù)執(zhí)行循環(huán)內(nèi)的指令。2
按位運(yùn)算 指的是把字符變成二進(jìn)制然后 按位運(yùn)算。
各種編程語(yǔ)言中的邏輯運(yùn)算符
作用 C Pascal
等于 ==
賦值=
不等于 !=
遠(yuǎn)小于
小于等于 =
與 && and
或 || or
非 ! not
按位與 運(yùn)算規(guī)則
0∧0 =0
0∧1=0
1∧0=0
1∧1=1
&與&& 的區(qū)別邏輯與&&表示邏輯與的意思,即為and。當(dāng)運(yùn)算符兩邊的表達(dá)式的結(jié)果都為true時(shí),整個(gè)運(yùn)算結(jié)果才為true,否則,只要有一方為false,則結(jié)果為false。
比如12&&23的結(jié)果就是1,12&&-1的結(jié)果是1,123&&0的結(jié)果就是0。
&&還具有短路的功能,即如果第一個(gè)表達(dá)式為false,則不再計(jì)算第二個(gè)表達(dá)式,例如,對(duì)于if(str != null && !str.equals(“”))表達(dá)式,當(dāng)str為null時(shí),后面的表達(dá)式不會(huì)執(zhí)行。
按位與&表示按位與。
&表示按位與操作,我們通常使用0x0f來與一個(gè)整數(shù)進(jìn)行&運(yùn)算,來獲取該整數(shù)的最低4個(gè)bit位,例如,0x31 & 0x0f的結(jié)果為0x01。
二進(jìn)制與運(yùn)算規(guī)則:1&1=1 1&0=0 0&0=0
15&127為什么等于15???
15二進(jìn)制: (0000 1111)
127二進(jìn)制: (1111 1111)
按位與自然就是(0000 1111)=153
本詞條內(nèi)容貢獻(xiàn)者為:
徐恒山 - 講師 - 西北農(nóng)林科技大學(xué)