關於C語言的位運算的問題,求助,請教C語言位運算的問題

2021-04-17 18:05:34 字數 986 閱讀 4152

1樓:匿名使用者

x = 11 -> 0000 1011~x -> 1111 0100

負數以補碼方bai式儲存的du,要換算成十進位制,先zhi把1111 0100取反(除開dao

符號回位),答再加1,這時為1000 1100 (1000 1011 + 1),為-12。

大概是這樣,你再具體查下補碼

2樓:吶傷誰聆聽

int裡第一位是符號位,0代表正數,代表負數。並且正數用原碼儲存,負數內用補碼

儲存(這樣做是能容將二進位制加法與減法統一,自己悟一下,很高明的方法)。11110010 第一位是1 所以是負數,所以是補碼。補碼轉原碼要取反加一(除了符號位),所以取反10001101。

再加一10001110 就是-14了。手機打字,希望你能理解。具體的搜尋關鍵字補碼來學習就行。望採納

3樓:匿名使用者

第一,輸出的是-12

第二,~是二進位制取反,不是取補碼

請教c語言位運算的問題

4樓:匿名使用者

^答案如來下:

#include

void main()

printf("the result is:%d\n",result);

}驗證通du

過,滿足要zhi

求!dao

5樓:匿名使用者

陣列放進一個陣列裡面然後進行運算就好了

6樓:司徒劍仙

可以 a^b就ok了

7樓:匿名使用者

放到2個byte型別的數裡異或,應該可以吧

你把數拆成2個數

8樓:匿名使用者

b=0x10000;//1 0000 0000 0000 0000

a^=(b>>=1);

C語言運算問題,C語言運算的問題

include int main printf llf ans 不過接連除了2018次5,答案太小了,輸出0.000000 scanf 是c語言中的一個輸入函式。與printf函式一樣,都被宣告在標頭檔案stdio.h裡,因此在使用scanf函式時要加上 include 在有一些實現中,printf...

C語言的問題,C語言問題,求助

1.設x的值為3,則表示式 x x x x 的值為?x先進行4次加1運算為7,後再相加為28 2.用long a 0xffffff int b char c 定義。執行b a,c b b後。b c的值為?a為長整型三個位元組為全1,賦值給b後b是整型,b的2個位元組也是全1,但b是有符號整型第一位元...

關於c語言問題關於c語言的問題

void vtaskstartscheduler void privileged function 是函式定義,函式名 vtaskstartscheduler,void 表示該函式是無參函式,前面的 void 表示這個函式無返回值。privileged function 是巨集,預編譯期間,執行文字...