C語言,11111011》2的值是多少

2022-04-05 02:32:02 字數 1680 閱讀 1448

1樓:吉祥二進位制

c語言中的右移不是看一堆資料,而是看資料型別是有符號還是無符號。如你所寫的資料:

1111 1011 >> 2;

如果是無符號數:右移2位就是邏輯移位,得到的結果顯然就是,0011 1110 即0x3e

如果是有符號數:右移2位就是算術移位,得到結果就是 1111 1110 即0xfe

測試**如下:

#include

int main()

注意兩點: 對於編譯器來說,到底是進行邏輯移位還是算術移位,在c/c++標準中沒有進行說明,但是一般編譯器,有符號數右移使用算術移位,無符號數右移使用邏輯移位, 也許這是一個很容易理解的事情,所以不需要規定了……

2樓:匿名使用者

如果 11111011 是二進位制的話,右移2位就是 11111110,高位是1,補充的就是1,高位是0就補充0

3樓:偷饅頭的賊

右移就是去掉右邊的,比如111110111》2就是去掉右邊的11.

如果是11111011《2 就是在右邊新增2個00=1111101100

4樓:何棟

62。這是c語言中的右移問題。

5樓:匿名使用者

>>為右移11111011>>2=00111110

c語言中5&6的值是多少?5|6的值又是多少?

6樓:匿名使用者

&是按位與的意思,|是按位或的意思

&的計算規則如下

1&1 = 1

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

|的計算規則如下

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

0|0 = 0

5的二進位制表示為101, 6的二進位制位110所以5&6=(100)十進位制就是4

5|6=(111)十進位制就是7

c語言按位取反~

7樓:am蘑菇

-5 首先我們現在的機器是32位的(樓主可以不必要理會)

所以4的二進位制為

0000 0000 0000 0000 0000 0000 0000 0100

而它的取反是

1111 1111 1111 1111 1111 1111 1111 1011

可以發現最高位是1,所以是負數(因為是int型,如果是unsigned就不能說是負數)。

但是,還要通過補碼的形式進行輸出(譚浩強第二章有說)

補碼是:按位取反再加1

所以也就是把1111 1111 1111 1111 1111 1111 1111 1011再取反

成0000 0000 0000 0000 0000 0000 0000 0100

然後再加1

就成0000 0000 0000 0000 0000 0000 0000 0101

所以得到答案為-5

8樓:丹昆雄

對於16位機子,4的2進製表示如下

00000000 00000100

取反後為

11111111 11111011

即-5驗證如下

#include

int main()

輸出結果為

-5請按任意鍵繼續. . .

決定C語言中函式返回值型別的是,4 C語言中,函式返回值的型別是由 決定的。

決定c語言中 函式返回值型別的是定義函式時在函式首部所指定的類回型。在c語言中,一個 答標準的函式定義語句塊必須包含函式返回值的型別識別符號 函式名 形參型別及數量 函式體 返回值表示式。如果函式返回值型別為 void 即無返回值 函式定義示例 其中int是函式返回值型別 int fun int a...

c語言計算圓周率的近似值填空,C語言 計算圓周率的近似值 填空

第一空 pi 0 第二空 pi pi t 第三空 pi pi 4 這是利用了一個求pi的公式 pi 4 1 1 3 1 5 1 7.白日依山盡,黃河入海流。欲窮千里目,更上一層樓。c語言 程式設計用 4 1 1 3 1 5 1 7 的公式求 的近似值 include void main while ...

C語言裡5 3的值 是怎麼算出來的

在c語言裡!的意思是 非 5 3就是5非等於3,就是5不等於3,這邏輯是對的,所以值是1 如果為3!3的話,值就為0了。是c語言中的非運算子,在變數前面使用它,會構建非運算表示式,表示式的返回結果是個布林值 也就是隻有true或false 對變數使用時,如果變數不是布林資料型別,將會強制轉化為布林型...