C C 原碼 反碼 補碼問題

2022-05-05 11:36:09 字數 385 閱讀 6885

正確答案:d

解析:

c語言中變數以補碼形式存放在記憶體中,正數的補碼與原碼相同,負數求補碼方式為(符號位不變,其餘各位取反,最後末尾加1);

32位機器:int 32位,short 16位。

x = 127,正數,原碼:0111 1111,補碼:0111 1111,擴充套件到32位高位補0,結果為0000007fh;

y = -9,負數,原碼:1000 1001,補碼:1111 0111,擴充套件到16位高位補1,結果為fff7h;

z = x + y = 118,原碼:0111 0110,補碼:0111 0110,擴充套件到32位高位補0,結果為00000076h。

注意:擴充套件時,符號位不變。

原碼 反碼 補碼

正數 原碼 反碼 補碼一樣 7 原 0 0000111 b 7 反 0 0000111 b 7 補 0 0000111 b 負數 原碼就是原來的表示方法 反碼是除符號位 最高位 外取反 補碼 反碼 1 7 原 1 0000111 b 7 反 1 1111000 b 7 補 1 1111001 b 當...

原碼 反碼 補碼

正數 原碼 反碼 補碼一樣 7 原 0 0000111 b 7 反 0 0000111 b 7 補 0 0000111 b 負數 原碼就是原來的表示方法 反碼是除符號位 最高位 外取反 補碼 反碼 1 7 原 1 0000111 b 7 反 1 1111000 b 7 補 1 1111001 b 當...

原碼 反碼 補碼

數值在計算機中表示形式為機器數 計算機只能識別0和1,使用的是二進位制,而在日常生活中人們使用的 是十進位制,正如亞里斯多德早就指出的那樣,今天十進位制的廣泛採用,只不過我們絕大多數人生來具有10個手 指頭這個解剖學事實的結果.儘管在歷史上手指計數 5,10進製 的實踐要比二或三進製計數出現的晚.摘...