假設有一個int類型的數,值為5,在計算機中的表示為:(int型的數占4個字節,32位)所以前面會有一堆0
00000000 00000000 00000000 00000101
現在想知道-5在計算機中怎么表示?
在計算機中,負數以其絕對值的補碼形式表達。 需要先獲得其絕對值的原碼,再得反碼,再得補碼。
首先理解幾個概念:原碼、反碼、補碼
原碼:一個整數,按照絕對值大小轉換成的二進制數,稱為原碼。
如:00000000 00000000 00000000 00000101 是5的原碼。
反碼:將二進制數按位取反,所得的新二進制數稱為原二進制數的反碼。
取反操作指:原為1,得0;原為0,得1。(1變0; 0變1)
比如將00000000 00000000 00000000 00000101每一位取反得:11111111 11111111 11111111 11111010
稱11111111 11111111 11111111 11111010是00000000 00000000 00000000 00000101的反碼
反碼是相互的。
補碼:反碼加1稱為補碼。
比如:00000000 00000000 00000000 00000101 的反碼是:11111111 11111111 11111111 11111010。
那么,補碼為:
11111111 11111111 11111111 11111010 + 1 = 11111111 11111111 11111111 11111011
所以-5在計算機中的表達為:11111111 11111111 11111111 11111011
