※ 引述《dynamicy (小人物)》之銘言:
: 第一題我覺得怪怪的耶,不是只有負數才需要用補數表示嘛?
: 個人覺得....
: 首先,-2==>1010 的1's是 1101 2's是1110
: -1==>1001 的1's是 1110 2's是1111
: +2==>0010 1's和2's應該都是同型
: +1==>0001 同上
: (應該沒記錯...只有負數才有補數)
: 這樣的話...不就是無解?...orz...
補數系統 能使用加法電路來實踐減法的計算
給定系統使用 5 bits來儲存資料
假設 有一個數 a = 9 化為2進位後 a = 01001
另一個數 b = 4 b = 00100
a+b ==> 9 01001
+4 +00100
--- -------
13 01101
a-b ==> 9 01001
-4 →此時才取4的2's補數 = 11100 +11100
--- -------
5 100101
^^
有進位 結果為正
b-a ==> 4 00100
-9 →9的2's =10111 +10111
--- -------
-5 11011
^沒有進位 結果要再取補數找到答案
11011 是 5的2's
所以..答案是 -5
(ps.如果前面-9取的是1's 則答案是用1's逆運算)
總結:
A,B > 0
A+B 直接算
A-B = A+(B的補數) ┬────有進位:為正 就是答案
│
└───沒有進位:為負 結果再取一次補數才是答案
--
◢███◣ 上菜囉~~~
◤◤◤◥█
□︵□
我是史上洨最多的特級廚師洨當家 ●~ ◥o ◢
 ̄ ̄◥███◣
███
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.115.216.182