計算機中為什麼將反碼加一就得到了補碼?

2023-06-06 19:40:05 字數 3699 閱讀 7210

1樓:秋日思雨

正數:正數的反碼與原碼相同。

負數:負數的反碼,符號位為「1」,數值部分按位取反。

例如: 符號位 數值位。

7]反= 0 0000111 b

7]反= 1 1111000 b

所以樓主再仔細看一下書,究竟00011010是+26的反碼,還是負數的反碼。

特別規定:-128的補碼為10000000,所以有符號位元組的補碼錶示範圍為:-128---127

128不在表數範圍之內,所以沒有反碼。

但是-128有補碼,8位二進位制位補碼的表數範圍是:-128≤x≤127。

為什麼表數範圍補碼要多一個?原因在於補碼中真值0只對應一個編碼,而在反碼中真值0對應兩個編碼。

計算機原碼反碼補碼怎麼算

2樓:象拔蚌燒賣

計算機原碼反碼補碼計算方法:

1、原碼。原碼就是符號位加上真值的絕對值,即用第一位表示符號,其餘位表示值。比如如果是8位二進位制:

1]原 = 0000 0001

1]原 = 1000 0001

第一位是符號位。 因為第一位是符號位, 所以8位二進位制數的取值範圍就是:[1111 1111 , 0111 1111]

即[-127 , 127]

原碼是人腦最容易理解和計算的表示方式。

2、反碼。反碼的表示方法是:正數的反碼是其本身。負數的反碼是在其原碼的基礎上, 符號位不變,其餘各個位取反。

1] =00000001]原 = 00000001]反。

1] =10000001]原 = 11111110]反。

可見如果一個反碼錶示的是負數,人腦無法直觀地看出來它的數值。通常要將其轉換成原碼再計算。

3、補碼。補碼的表示方法是:正數的補碼就是其本身。負數的補碼是在其原碼的基礎上,符號位不變,其餘各位取反,最後+1。(即在反碼的基礎上+1)。

1] =00000001]原 = 00000001]反 = 00000001]補。

1] =10000001]原 = 11111110]反 = 11111111]補。

對於負數,補碼錶示方式也是人腦無法直**出其數值的。通常也需要轉換成原碼在計算其數值。

3樓:沙裡波特

計算機中,並沒有原碼和反碼,只是使用補碼,代表正負數。

使用補碼的意義:可以把減法或負數,轉換為加法運算。從而簡化計算機的硬體。

比如鐘錶,時針轉一圈,週期是 12 小時。

倒撥 3 小時,可以用正撥 9 小時代替。

9,就稱為-3 的補數。

計算方法:12-3 = 9。

對於分針,倒撥 x 分,就可以用正撥 60-x 代替。

如果,限定了兩位十進位制數 (0~99),週期就是 100。

那麼,減一,就可以用 +99 代替。

忽略進位,只取兩位數,這兩種演算法,結果就是相同的。

於是,99 就是 -1 的補數。

其它負數的補數,大家可以自己求!

求出了負數的補數,就可用加法,代替減法了。

計算機中使用二進位制,補數,就改稱為【補碼】。

常用的八位二進位制是:0000 0000~1111 1111。

它們代表了十進位制:0~255,週期就是 256。

那麼,-1,就可以用 255 = 1111 1111 代替。

所以:-1 的補碼,就是 1111 1111 = 255。

同理:-2 的補碼,就是 1111 1110 = 254。

繼續:-3 的補碼,就是 1111 1101 = 253。

最後:-128,補碼是 1000 0000 = 128。

計算公式:負數的補碼=256+這個負數。

正數,直接運算即可,不需要求補碼。

也可以說,正數本身就是補碼。

補碼的應用如: 7-3 = 4。

用補碼的計算過程如下:

7 的補碼=

3的補碼=

相加

得: (1)= 4 的補碼。

捨棄進位,只保留八位,作為結果即可。

這就是:使用補碼,加法就代替了減法。

所以,在計算機中,有一個加法器,就夠用了。

原碼和反碼,都沒有這種功能。

原碼和反碼,毫無用處。計算機中,根本就沒有它們。

補碼是在反碼後加1,那個1是怎麼加的

4樓:可軒

舉例說明如下:

真值 -11d = 1011b , 若字長8位, 則:

11d]原 =10001011b , 最高位是符號位,1表示負數,其餘為數值位。

11d]反 =11110100b , 將原碼除符號位之外的各位取反得反碼。

11d]補 =11110101b ,將反碼末位加1得補碼d是十進位制數字尾 , b是二進位制數字尾。

補碼是在反碼後加1,那個1是怎麼加的?

5樓:辛寄竹竹緞

舉例說明如下:

真值-11d

1011b若字長8位,則:[-11d]原。

10001011b

最高位是符號位,1表示負數,其餘為數值位[-11d]反。

11110100b

將原碼除符號位之外的各位取反得反碼。

11d]補。

11110101b

將反碼末位加1得補碼。

d是十進位制數字尾。

b是二進位制數字尾。

計算機原碼反碼補碼怎樣計算

6樓:做而論道

計算機中,只有補碼,沒有原碼和反碼

數字,在計算機中,一律用補碼錶示。數字與補碼的關係,可見下表:

換算公式,很簡單的,一看便知。

原碼反碼取反加一,實際上,都沒有什麼用處。

老外數學不好,才不得不用這麼麻煩的做法。

計算機為什麼要引入反碼和補碼

7樓:況穎卿濮卯

反碼就是給出一組二進位制數,把0換成1,1換成0,如:11001的反碼是00110。正數的補碼就是那個正數的本身,如11001的補碼還是11001,負數的補碼是先將該數取反,然後加1,如-11001的原碼是111001,第一個1是表示負數,它的補碼就是把第一個1後面的所有的數取反後加1,結果為100111。

希望能明白!

計算機一般都用什麼進位制,計算機中的進位制學了以後有啥用

計算機一般用 二進位制。二進位制是計算技術中廣泛採用的一種數制。二進位制資料回是用0和1兩個數碼來答表示的數。它的基數為2,進位規則是 逢二進一 借位規則是 借一當二 由18世紀德國數理哲學大師萊布尼茲發現。當前的計算機系統使用的基本上是二進位制系統,資料在計算機中主要是以補碼的形式儲存的。計算機中...

為什麼在檢視工作組計算機中不能訪問別人的計算機

基本上那個部落格上的方法就是所有的方法了。請確保你完全嘗試了那個部落格所有方法。我再加兩條,你在張航的機器上試試 1 開始 執行 gpedit.msc 計算機配置 windows設定 安全設定 本地策略 安全選項 右邊找到 網路訪問 本地帳戶的共享和安全模型 雙擊,選擇 經典 對本地使用者進行身份驗...

電腦為什麼採用二進位制運算,計算機中為什麼採用二進位制?而平時採用十六進位制?

計算機為什麼使用二進位制 原因如下 1.技術上容易實現 用雙穩態電路表示二進位制數字0和1是很容易的事情。2.可靠性高 二進位制中只使用0和1兩個數字,傳輸和處理時不易出錯,因而可以保障計算機具有很高的可靠性。3.運算規則簡單 與十進位制數相比,二進位制數的運算規則要簡單得多,這不僅可以使運算器的結...