位置:首頁 > 軟件操作教程 > 編程開發(fā) > C語言 > 問題詳情

C語言 按位“與”運(yùn)算

提問人:劉團(tuán)圓發(fā)布時(shí)間:2020-12-02

按位“與”操作的運(yùn)算符為“&”,操作形式為:

    操作數(shù)1&操作數(shù)2

    運(yùn)算規(guī)則為:對參加運(yùn)算的兩個(gè)操作數(shù),按二進(jìn)制位進(jìn)行“與”操作。即,如果兩個(gè)操作數(shù)的對應(yīng)位的二進(jìn)制位都是1,該位“與”運(yùn)算的結(jié)果為1,其他情況都為0。

    按位“與”運(yùn)算的操作規(guī)則與邏輯與運(yùn)算規(guī)則一致。即:

    0&0=0  0&1=0  1&0=0  1&1=0

對兩個(gè)十進(jìn)制整數(shù)按位“與”運(yùn)算,需將兩個(gè)十進(jìn)制整數(shù)都轉(zhuǎn)換為二進(jìn)制形式,再逐位進(jìn)行運(yùn)算。

【例題】計(jì)算5&7

計(jì)算過程:將5和7分別轉(zhuǎn)換為二進(jìn)制數(shù),再按位“與”運(yùn)算,結(jié)果00000101仍為5。

5->     00000101

7-> &  00000111

————————

            00000101

將上述結(jié)果用程序?qū)崿F(xiàn),代碼如下:

#include < stdio.h > 

main()

{

    int i=5,j=7;

    int k;

    k=i&j;

    printf("%d\n",k);

}

如果按位u與”運(yùn)算的操作數(shù)為負(fù)數(shù),如-5,則以補(bǔ)碼形式表示二進(jìn)制數(shù),再按位進(jìn)行“與”運(yùn)算。可以利用按位“與”操作的特點(diǎn)來實(shí)現(xiàn)一些特殊的操作,比如取出一些數(shù)中的某些位。

繼續(xù)查找其他問題的答案?

相關(guān)視頻回答
回復(fù)(0)
返回頂部