1:& (與運算子)
兩個同為1,才為1,否則為0
2:| (或運算)
乙個為1,即為1
3:^ (異或運算)
兩個不同,為1,否則為0
4:<< (左移運算子)
各二進位全部左移若干位,高位丟棄,低位補0
比如:1<<7:10000000
5:>> (右移運算子)
各二進位全部右移若干位,高位補0
比如:獲取乙個數x的第i位的二進位制數:
int u = x>>i&1;
對於x=10,i=1,即右移一位
10的二進位制為:1010
10>>1的二進位制就為101了。
再&1,就得出第1位(i位)(對原x的位數從0開始從右往左計)的位置是0還是1了。即為轉二進位制操作。
關於位運算
今天看k神的一篇題解,看到一些關於位運算的技巧。又想起以前學長川哥給的一篇位運算對集合處理的技巧的pdf。所以就一起整理一下。各種位運算子的功能就不累述了。集合的位運算表示 來自川哥給的pdf 基本表示 1.空集 0 2.全集 1 3.只含有第 i 個元素的集合1 集合間的操作 1.s 與 t 的並...
關於位運算
9月21日,對本文從格式到部分內容上都進行了修改 今天看了一位師兄去年的筆經總結,其中有一題是 不許用 和 來實現求任意數除以3的餘數 我想考官的目的應該是想考察學生對位運算的熟悉程度吧,於是我把題目擴充套件成 只能用 和位運算實現正整數除法 和取模 注意 這裡不能使用其它的庫例程來輔助計算,如lo...
關於 位運算
位運算 位運算是把數字用二進位制表示之後,對每一位上0或者1的運算。理解位運算的第一步是理解二進位制。二進位制是指數字的每一位都是0或者1.比如十進位制的2轉化為二進位制之後就是10。在程式設計師的圈子裡有乙個流傳了很久的笑話,說世界上有10種人,一種人知道二進位制,而另一種人不知道二進位制。其實二...