正負數二進位制

2022-07-06 14:12:15 字數 477 閱讀 7244

1、原碼:

乙個正數的原碼,是按照絕對值大小轉換成的二進位制數;

乙個負數的原碼,是按照絕對值大小轉換成的二進位制數,然後最高位補1。

2、反碼:

正數的反碼與原碼相同;

負數的反碼為對該數的原碼除符號位外各位取反(原為1,取反為0;否則相反)。

3、補碼:

正數的補碼與原碼相同;

負數的補碼為對該數的原碼除符號位外各位取反,然後加1。

總結

正數:原碼、反碼、補碼都是其本身

負數:原碼=本身;反碼=原碼符號位不變,其它位取反;補碼=反碼+1,例:10010001:原=10010001 反=11101110 補=11101111

1、計算機中二進位制均以補碼形式存在。

2、-x=!x+1

二進位制正負數的浮點表示法

以實數 9.625 為例,來看看如何將其表達為單精度的浮點數格式。具體轉換步驟如下 1 首先,需要將 9.625 用二進位制浮點數表達出來,然後變換為相應的浮點數格式。即 9.625 的二進位制為 1001.101,用規範的浮點數表達應為 1.001101 23。冪次等於小數點移動的位數 2 其次,...

二進位制正負數的原碼 反碼 補碼之間的轉化

首先,計算機都是使用二進位制的補碼進行計算。1 正數的二進位制原碼 反碼 補碼都是相同的 2 負數的二進位制原碼 負數的絕對值的二進位制的最高位變為1 1是標誌位,只用來表示正負,1表示負數,0表示是正數。所以八位二進位制的取值範圍是 127,127 其餘位與正數原碼相同。比如 32 第一步 32 ...

關於正負數的二進位製新發現以及求法

在做藍橋杯真題的時候發現了一種求二進位制的很厲害的求法,先看 i表示二進位制數。1 void tobinarystr int i,string ans 212 13 14 else 1523 24 2526 對於正數的二進位制,高位一定是0 string從左往右依次表示高位到低位 因為正的二進位制數...