-
補數
鎖定
- 中文名
- 補數
- 別 名
- 補碼
- 應 用
- 計算機科學中
- 功 能
- 變換數字的符號
目錄
補數補數的概念
在日常生活中,常常會遇到補數的概念,例如時鐘指示為六點,想要它指向三點,可以按順時針方向將分針轉九格,也可以逆時針方向轉三格,結果是一致的。由於時針轉一圈為12小時,而其中12在時鐘裏是不被顯示而自動丟失的,即15-12=3,15點和三點在時鐘表示上是一致的。想象一下,在時鐘這個問題上,任何時候時針向順時針轉九格和逆時針轉三格的效果都是一致的,我們將方向定位正負,即-3與+9等價。而數學上稱12為模寫作(mod 12),而稱+9是-3以12為模的補數記為
-3
+9(mod 12)
-4
+8(mod 12)
-5
+7(mod 12)
【以上截取自《計算機組成原理·第二版》唐朔飛著p221】
補數結論:(在模確定的情況下)
一個負數可用它的正補數來代替,而這個正補數可以用模加上負數本身來得到。
一個正數和一個負數互為補數時,兩數的絕對值之和為模
正數的補數為其自身。
補數計算機科學中的應用
計算機科學中,補數的最大應用點為,在處理加法和減法中,不會因為數字的正負使用不同的計算方式。只要一種加法電路就可以處理各種有符號數加法,而且減法可以用一個數加上另一個數的補數來表示,因此只要有加法電路及補數電路即可完成各種有符號數的加法及減法,電路設計上相當方便。
補數關於補碼
有符號的二進制數的補碼運算方法為:
正數:補碼為其本身
如:-1101 的補碼為
1. -1101的原碼為 11101(第一位為符號位)
-1101的反碼為 10010(第一位為符號位)
-1101的補碼為 10011(第一位為符號位)
整數的補碼定義
[x]補={ 0,x|( 2^n >x >=0)}和{ 2^(n+1)+x|(0>x>=-2^n)(mod 2^(n+1))}