C# ~按位取反運算子

QQ_Mr_Han發表於2018-04-23

      今天用到了 ~按位取反運算子,可是在網上搜尋了半天也不太明白說的什麼意思,按它的意思求出來的結果也總是對不上,然後就經過我多翻查證之後配上自己的理解來談一談。                                                                                                                // ~(非運算)  位邏輯非運算按位對運算物件的值進行非運算 
 // 計算機運算的時候都是以補碼的形式進行計算 ~ 符號就是求出了該數的補碼的取反的原碼 
 // 以6為例: 
 // 原碼:補碼:反碼:(正數都一樣(加符號位))00000110 
 // ~字元的運算邏輯、先取6的補碼 00000110
 //                                 然後取反得 11111001(這是一個補碼)然後在求該補碼的原碼(該數是一個負數的反碼錶示形式)
 //以知一個負數的補碼形式求原碼得 10000111(10進製表達形式為-7)
 //以-6為例:
 // 原碼:10000110
 // 反碼:11111001
 // 補碼:11111010
 //~字元的運算邏輯 先取-6的補碼 11111010 
 //                             再取其相反   00000101(這個一個補碼得表示形式) 

 //               在求其補碼形式得原碼 00000101(10進製表示5)(這是一個正數:原反補都一樣)                                                                  以上就是我得一些自己得理解,可能不是太官方得語言,希望可以幫到大家理解,也歡迎各位大神指點!

相關文章