「二補數」(2’s Complement)方法儲存整數資料的優點在於可以使用相同的加法和減法運算來處理正數和負數,並且不需要額外的代碼來區分正負數。
對於使用8位元記憶體儲存整數的電腦系統,「二補數」方法可以表示的整數範圍為-128到127。下面是計算過程:
首先,對於正數,它們的二補數和原碼是相同的,例如: +1 的二補數 = 00000001 +127 的二補數 = 01111111
對於負數,使用以下步驟獲得其二補數:
- 取該負數的絕對值的二進制表示。
- 對二進制數進行按位取反(0 變為 1,1 變為 0)。
- 對取反後的數字加1。
例如,要計算-1的二補數:
- 取1的絕對值為1,其二進制表示為00000001。
- 對1進行按位取反,得到11111110。
- 將取反後的數字加1,得到11111111,這就是-1的二補數。
再舉個例子,計算-64的二補數:
- 取64的絕對值為64,其二進制表示為01000000。
- 對64進行按位取反,得到10111111。
- 將取反後的數字加1,得到11000000,這就是-64的二補數。
根據這種計算方式,該系統中的最高位(最左邊的位)表示符號位,0表示正數,1表示負數。這樣,8位元的記憶體可以表示-128到127的整數範圍,其中-128對應於10000000,127對應於01111111。
点点赞赏,手留余香
给TA打赏
評論0