基本的位運算

2022-06-11 18:00:14 字數 471 閱讀 3985

位運算常被用於二進位制的運算,例如利用子網掩碼計算ip位址,把擋住的字段作為網段,其餘的作為ip位址

與運算的結果如下,兩邊同時為1,則結果為1

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

非運算即取反運算,在二進位制中1變0,0變1

110101進行非運算後為

001010即1010

只要兩邊有乙個是1,結果就是1

或運算的方式如下

0|0=0,0|1=1,1|0=1,1|1=1

簡單理解就是,同為假,異為真

0^0=0,0^1=1,1^0=1,1^1=0

可以看出,任何數與0異或,結果都是其本身。利用異或還可以實現乙個很好的交換演算法,用於交換兩個數,演算法如下:

1 a = a ^b;

2 b = b ^a;

3 a = a ^ b;

位基本運算 一

首先明確 基本位運算規則,不依賴正負.定義 對於a,b兩個位向量 aw 1,aw 2,a0 和 bw 1,bw 2,b0 將a b定義為乙個長度為w的位向量,其中第i個元素等於ai bi,0 i 0 leq i 0 i w w.類似 定義同理.對應位全部為1,對應結果位為1,否則為0.0110 11...

基礎演算法 位運算 基本運算

1.移動 左移n位 乘以2的n次方 右移n位 除以2的n次方 0 左移n位 在1後面加上n個0 注 0不等於1。等於11 11 x 0 正數左移右邊補0 正數右移左邊補0 負數左移右邊補1 負數右移左邊補1 移動的作用總結 乘2,除2。右n位清零 2.異或 x 0 x x x 0 x 1 x x x...

位運算中的基本騷操作

計算機中的數在記憶體中都是以二進位制形式進行儲存的,用位運算就是直接對整數在記憶體中的二進位制位進行操作,因此其執行效率非常高,在程式中盡量使用位運算進行操作,這會大大提高程式的效能。1.交換兩值 void swap int a,int b 位與操作 void swap int a,int b 2....