二進数足し算計算機

二つの二進整数を加算し、十進数の値で基数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と書きます。現在の桁は零になり、一を左へ繰り上げます。

先頭の零は答えに影響しますか?

いいえ。十進整数と同様、先頭の零は二進整数の値を変えません。

二進数の和を検算するには?

両入力を十進数に変換して加算し、その和を二進数に戻します。その確認用に十進数の値も表示します。

二進数加算はオーバーフローしますか?

固定幅レジスタでは、和に追加の最上位ビットが必要になるとオーバーフローすることがあります。この計算機は繰り上がりを捨てず、結果全体を表示します。

負の二進数に対応していますか?

入力は符号なし整数として解釈します。負の値には、二の補数などの符号付き表現と固定ビット幅の取り決めが必要です。