1.二進位制加法:
例如:(1101)+(1011)=11000
1101
+1011
——————
11000
2.二進位制減法:
3.按位與:&
若兩個相應的位都為1,則該位為1;否則為0。
根據按位或判斷奇偶性(a&1)
#include
using
namespace
std ;
int main()
a&1:取二進位制的最末位,若最末位為0;則為偶數;若最末位為1,則為奇數。4.按位與:|
兩個相應位中只要有乙個為1,該位的結果值就為1。
把二進位制最末位強行轉化為1:x|1;5.按位異或:^把二進位制最末位變成0:(x|1)-1。
兩個相應位同號為0,異號為1。
異或加密
#include
using
namespace
std;
int main()
兩次異或同乙個數最後結果仍是該數,swap函式就是利用該原理。6.按位取反:~
7.左移(<<)和右移(>>)
a << b 相當於 a乘以2的b次方;右移時,需注意符號位問題,務必確保對非負整數進行運算。a >> b 相當於a除以2的b次方。
另外,快速冪也用到了右移運算子,哭唧唧,我一定要學會快速冪!
位運算及其應用
按位與 如果兩個相應的二進位制位都為1,則該位的結果值為1,否則為0。按位或 兩個相應的二進位制位中只要有乙個為1,該位的結果值為1。按位異或 若參加運算的兩個二進位制位值相同則為0,否則為1。取反 是一元運算子,用來對乙個二進位制數按位取反,即將0變1,將1變0。左移 用來將乙個數的各二進位制位全...
位運算及其應用詳解
位運算子 位運算是以二進位制位為單位進行的運算,其運算元和運算結果都是整型值。todo 字元型 char 位運算子共有7個,分別是 位與 位或 位非 位異或 右移 左移 0填充的右移 一 邏輯運算子 1.位與運算 1 運算規則 位與運算的實質是將參與運算的兩個資料,按對應的二進位制數逐位進行邏輯與運...
位運算及其應用詳解
一 邏輯運算子 1.位與運算 1 運算規則 位與運算的實質是將參與運算的兩個資料,按對應的二進位制數逐位進行邏輯與運算。例如 int型常量4和7進行位與運算的運算過程如下 4 0000 0000 0000 0100 7 0000 0000 0000 0111 0000 0000 0000 0100 ...