C語言原碼 反碼 補碼

2021-07-25 02:31:51 字數 731 閱讀 9101

原碼、反碼、補碼

計算機的基本儲存單元是位元組(byte)

計算的的最小儲存單元是位(bit)

c語言當中的數被分為有符號數和無符號數

有符號數是:正數 負數 0

無符號數是:0 不帶符號的正數

對於無符號數和有符號數的0和正數,原碼、反碼、補碼一致;

對於有符號數,最高位為符號位,0代表(+),1代表(-);

對於有符號數中的負數,原碼最高位為符號位;反碼符號位不變,其餘位取反;補碼在反碼的基礎上+1。

10 00001010 原碼

00001010 反碼

00001010 補碼

+10 0-0001010 原碼

0-0001010 反碼

0-0001010 補碼

-10 1-0001010 原碼

1-1110101 反碼

1-1110110 補碼

計算機儲存的是資料的二進位制補碼形式

對於8位無符號二進位制 儲存的範圍 0 255

******xx

00000000 11111111 無符號數的範圍0 ~ 2^8-1

對於8位有符號進製數

正數 0 0000000 0 1111111 儲存的範圍 0 ~ 2^7-1

負數 1 0000000(補碼) ;1 1111111(補碼) 1 0000001 ,-128 ~ -1

-0就是-128 全0才是0,-0在計算機處理時被當做了-128

C語言 原碼 反碼 補碼

c語言 原碼 反碼 補碼 本文以12和 12 為例,簡要介紹正數和負數的原碼 反碼 補碼求解過程 注 本文均以c語言中整數int所佔4位元組32位形式來求解!正數原碼 反碼 補碼 1 求解方法 正數的原碼 反碼 補碼!2 例子 求解12的原碼 反碼和補碼?解 12對應的二進位制形式為 1100 原碼...

C語言的原碼,反碼,補碼

1 原碼表示 原碼表示法是機器數的一種簡單的表示法。其符號位用0表示正號,用 表示負號,數值一般用二進位制形式表示。設有一數為x,則原碼表示可記作 x 原。例如,x1 1010110 x2 一1001010 其原碼記作 x1 原 1010110 原 01010110 x2 原 1001010 原 1...

原碼 反碼 補碼

正數 原碼 反碼 補碼一樣 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 當...