位運算:程式中的數在計算機記憶體中是以2進製形式儲存的,位運算是直接對整數在記憶體中的2進製處理的。
方法:對整數進行處理
用處:優化程式
運算符號:
1:與&//按位與
c = a&b;
//按位或
c = a|b;
//按位異或
c = a^b;
//按位取反
c =~a;//左移
c = a
c = a>>b;
//不帶符號右移
c = a>>>b;
相同位的數都為1則與運算後為1,若是有乙個不是1的,與運算為0;
與常用於2進製的取位操作。
eg:乙個數與1就可以取二進位制的最後位,就可以利用判斷乙個數是奇數還是偶數。二進位制的最末位為0表示該數為偶數,最末位為1表示該數為奇數。(二進位制的整數最後位為1是奇數,為0是偶數)
2:或|
相同位只要有乙個為1或運算後都為1;或運算通常用於二進位制特定位上的無條件賦值;
eg:乙個數or 1的結果就是把二進位制最末位強行變成1。如果需要把二進位制最末位變成0,對這個數or 1之後再減一就可以了,其實際意義就是把這個數強行變成最接近的偶數。
位運算 57 普通的位運算
要求說明 當 a 2,b 4,c 6,d 8時程式設計求a c b d a d a的值。解 單目運算子 都是對對應整數轉化成二進位制數後按位比較計算 兩個相應二進位中,都為1,該位為1,否則為0 兩個相應二進位中,有乙個1,該位為1,否則為0 兩個相應二進位,相同為0,不同為1 單目運算子,作用對二...
位運算(1) 初識位運算
前段時間數電課學了些進製轉換,還有與或非等邏輯運算,如今再來看看位運算,倒輕鬆了不少。很早就想寫些非總結性部落格了,奈何還是太懶。也也不知怎的突然又來了興致,趕忙寫下這篇部落格。廢話不多說,今天準備總結總結關於位運算的知識。程式中的所有數在計算機記憶體中都是以二進位制的形式儲存的,即0 1兩種狀態,...
標誌位的位運算應用
今天設計新版標誌位,老郭提出了乙個新的方案。以往都是乙個字段設定乙個狀態,tinyint型別,0或者1,但是這樣的壞處是如果乙個資訊表有很多狀態,需要增加很多的字段,空間利用不好,所以他提出用二進位制位運算來解決標示位的問題。設定標示位字段位tinyint型別,也就是最大128,換成二進位制就是有8...