天天看點

計算機記憶體數值存儲方式

文章目錄

  • ​​計算機記憶體數值存儲方式​​
  • ​​原碼​​
  • ​​反碼​​
  • ​​補碼​​
  • ​​主要原因:​​
  • ​​有符号和無符号的差別:​​
  • ​​有符号和無符号整型取值範圍​​

計算機記憶體數值存儲方式

原碼

一個數的原碼(原始的二進制碼)有如下特點:

最高位作為符号位,0表示正,為1表示負。

其他的數值部分就是數值本身絕對值的二進制數。

負數的原碼是在其絕對值的基礎上,最高位變為1

計算機記憶體數值存儲方式

反碼

對于正數,反碼與原碼相同

對于負數,符号位不變,其他部分取反(1變0,0變1)

計算機記憶體數值存儲方式

補碼

在計算機系統中,數值一律用補碼來存儲

主要原因:

統一了零的編碼

将符号位和其它位統一處理

将減法運算轉變為加法運算

兩個用補碼表示的數值相加時,如果最高位(符号位)有進位,則進位被舍棄

補碼特點:

對于正數,原碼、反碼、補碼相同

對于負數,其補碼為它的反碼加1

補碼符号位不動,其他位求反,最後整個數加1,得到原碼

計算機記憶體數值存儲方式

有符号和無符号的差別:

有符号:最高位為符号位,0代表正數,1代表負數

無符号:最高位不是符号位,而就是數的一部分,無符号數不可能是負數,資料存儲在計算機中不存在符号位

無符号整型數是不帶正負表示符号的整型數。

有符号和無符号整型取值範圍

計算機記憶體數值存儲方式

繼續閱讀