更新時(shí)間:2022-10-24 來源:黑馬程序員 瀏覽量:
按位與指的是參與運(yùn)算的兩個(gè)數(shù)各對(duì)應(yīng)的二進(jìn)制位進(jìn)行“與”的操作。只有對(duì)應(yīng)的兩個(gè)進(jìn)制位都是1時(shí),結(jié)果位就為1,否則結(jié)果位為0。符號(hào)“&”是按位與的符號(hào),接下來,以9和3為例,進(jìn)行按位與操作,如圖2-13所示。
圖2-13 按位與操作
從圖2-13中可以看出,當(dāng)將00001001與00000011進(jìn)行按位與操作后,結(jié)果為00000001。為了驗(yàn)證結(jié)果是否正確,接下來,在代碼中進(jìn)行測試,具體如下:
>>> a = 9 >>> b = 3 >>> bin(a & b) '0b1'
從結(jié)果可以看出,9和3進(jìn)行按位與操作后,結(jié)果為十進(jìn)制的1。
按位或指的是參與運(yùn)算的兩個(gè)數(shù)各對(duì)應(yīng)的二進(jìn)制位進(jìn)行“或”的操作。只要對(duì)應(yīng)的兩個(gè)二進(jìn)制位有一個(gè)為1時(shí),結(jié)果位就為1。當(dāng)參與運(yùn)算的是負(fù)數(shù)時(shí),參與運(yùn)算的兩個(gè)數(shù)均以補(bǔ)碼出現(xiàn)。按位或使用符號(hào)“|”表示,接下來,對(duì)8和3進(jìn)行按位或操作,如圖2-14所示。
圖2-14 按位或操作
從圖2-14中可以看出,當(dāng)將00001000與00000011進(jìn)行按位或操作后,結(jié)果為00001011。為了驗(yàn)證結(jié)果是否正確,接下來,在代碼中進(jìn)行測試,具體如下:
>>> a = 8 >>> b = 3 >>> bin(a | b) '0b1011'
從結(jié)果可以看出,8和3進(jìn)行按位或操作后,結(jié)果為十進(jìn)制的11。