1樓:匿名使用者
10000111,是10進位制的,要轉為2進位制,但高5位的對計算不影響(因為那中間的幾個零),可忽略,即等價於x=111=(1101111),括號中為二進位制
(x-2)^(x+2)=(1101101)^(1110001)=(0011100)=28
2樓:匿名使用者
你們說錯了,char 是16位的,unsigned char 才是8位的。
但是你們計算結果是對的,因為這兩個數(x-2)和(x+2)的高八位都是一樣的,異或操作後當然就等於0咯。
具體起來是下面這樣:
11101101
11110001 xor
-------------
00011100
這是按位異或。00011100(二進位制)以十進位制列印出來就是28.
3樓:匿名使用者
很顯然,char x=10000111超出範圍了,所以根本不是這個值,把他變成2進位制,然後取低8位才識結果
4樓:匿名使用者
10000111 應該是2進位制吧,換成0x87
c語言按位左移運算規則C語言按位左移運算規則
c語言中按位左移的運算子為 其規則如下 對於操作a 1 按照二進位制值每位向高位 書寫上是向左 移動n位 2 最高位 最左邊的 n位捨去 3 最低位 最右邊 填加n個0.簡單起見,用char型舉例如下 例一0x12 3 b00010010 3 b10010 000 這裡最高位的三個0被捨去,其它依次...
c語言乘方運算,C語言乘方運算
c語言的乘來方運算可以利用庫 自函式pow。pow函式原型 double pow double x,double y 標頭檔案bai math.h cmath c 中 功能 計算x的duy次冪。參考代zhi碼 include include int main 輸出 9 include include...
C語言中的位運算是幹什麼的,C語言中的位運算有什麼優點?
通常在遇到byte運算問題時要用.例如gif image 檔案中的 螢幕定義塊 中的第5個位元組 byte 是 packed fields 最高位1個bit是有無全域性調色盤標誌位.接下來3個bit是分辯率 接下來1個bit是調色盤顏色是否安出現頻繁程度分過類的標誌位.最低的3個bit是調色盤顏色表...