二進位加法計算機

將兩個二進位整數相加,並以十進位值核對以2為基底的總和。

二進位數相加
輸入兩個只含零與一的無號二進位整數。

關於二進位加法

二進位加法將以2為基底的數相加,使用與十進位相同的位值原理,但每一位代表二的冪次,而非十的冪次,且每個數字只能是零或一。四種基本情況很簡單:零加零得零,零加一得一,一加零得一,一加一則得二進位的十。最後一種情況要在目前位寫零,向左邊下一位進一。 手算較長數值時,將最右側數字對齊,由右至左計算,並加入前一位的進位。某位若是一加一再加進位,總和為十進位的三,即二進位的十一,因此寫一並進一。持續計算,直到所有位數與最後進位都處理完畢。基本數位硬體中的漣波進位加法器正是執行此程序,現代處理器則使用更快的超前進位與平行前綴電路。 例如,1011加0101從右側開始。一加一得零並進一;下一位是一加零再加進位,得零並再次進一;再下一位是零加一再加進位,同樣得零並進一;最左位是一加零再加進位,得到二進位的十。完整結果為10000。十進位核對則是十一加五等於十六。 二進位加法是電腦算術的基礎。減法可以透過加上二的補數實作,乘法可由位移後相加組成,位址計算則反覆將位移量加到基底位址。檢查碼、計數器、計時器、圖形運算及密碼演算法都依賴位元層級的加法。理解進位規則,有助於掌握其他低階運算。 本計算機將輸入視為無號整數,並以精確整數運算處理實務可用的任意長度。前置零不改變數值,因此00101與101都代表五。二進位小數及有號二的補數解讀不在本工具範圍內。使用固定字長硬體時,結果可能比最長的運算元多一個位元。如果捨棄該額外進位,儲存結果會依所選字長對應的模數回繞。 二進位結果旁的十進位值是方便核對的另一種精確表示,不是額外的近似值。可以將兩個輸入轉成十進位、相加,再將總和轉回二進位來驗證。二的冪次特別適合核對:對連續的一加一,會將這些一變成零,並在最前面產生新的一。

二進位加法範例

範例展示進位傳遞與十進位核對。

加法二進位總和十進位核對
1011 + 1011000011 + 5 = 16.
1 + 1101 + 1 = 2,並產生一次進位。
1111 + 11000015 + 1 = 16,進位傳遞至每一位。
101010 + 11011000042 + 6 = 48.

如何將二進位數相加

  1. 輸入第一個無號二進位整數,只使用零與一。
  2. 輸入第二個二進位整數,理解運算時將其最低有效位與第一個數對齊。
  3. 選取「計算二進位總和」,求得精確的以2為基底的結果。
  4. 查看二進位總和,並用顯示的十進位值快速核對。

二進位加法常見問題

二進位的一加一是多少?

一加一在二進位寫作10。目前位寫零,向左進一。

前置零會影響答案嗎?

不會。前置零不改變二進位整數的值,就像它不改變十進位整數一樣。

如何核對二進位總和?

將兩個輸入轉成十進位後相加,再把總和轉回二進位。計算機顯示十進位值,就是為了方便核對。

二進位加法會溢位嗎?

當總和需要額外的最高位時,固定字長暫存器可能溢位。本計算機會顯示完整結果,不捨棄進位。

支援負的二進位數嗎?

輸入會解讀為無號整數。負值需要約定有號表示法,例如二的補數,以及固定的位元寬度。