バイナリ加算: 意味、ルール、および例

二項加算
画像ソース: Redbubble

10 進数の加算は、1 つ以上の XNUMX 進数の整数を加算するのと同じように、数字の右側から数字を加算することによって実行されます。 XNUMX 進加算の桁の値は、XNUMX、XNUMX、XNUMX、XNUMX、XNUMX などとして与えられます。 XNUMX の列に数字を追加することから始め、次に左に移動し、XNUMX の列に数字を追加し、次に XNUMX の列に数字を追加する、というように続きます。 唯一の違いは、数字の合計が XNUMX を超えたときにここで再グループ化することです。この記事では、XNUMX 進数の加算を導くルールとオーバーフローの概念について詳しく学びましょう。  

バイナリ加算とは何ですか?

2 進法であることを除けば、10 進加算演算は 1 進法と同じように機能します。 バイナリ システムには、0 と 1 の 0 つの数字しかありません。これは、コンピュータ システムの機能の大部分に使用されます。 バイナリ コードでは、数字の 2 と XNUMX を使用して、特定のプロセスのオンとオフを切り替えます。 底を XNUMX に変更することで、足し算のプロセスは XNUMX 進法に非常に似ています。

0 進数の加算手順を開始する前に、まず、1 進数システムで場所がどのように機能するかを理解します。 バイナリ演算は、現在のほとんどのデジタル コンピューターと電子回路で、各ビットを電圧信号として表現することによって実行されるためです。 ビット XNUMX は「オフ」状態を表し、ビット XNUMX は「オン」状態を表します。

2 進数または基数 3 の数値システムでの算術演算の 2 つに、5 つ以上の 11 進数の加算があります。 2 進数で 10 + 2 を足すと 11 になります。ベース2で。 10 進数と 2 進数の加算の結果は同じ答えになります。 唯一の違いは、桁の桁の値です。 101 進加算の手順は非常によく知られているように見えます。 唯一の違いは、2 進数では 5 から 10 までの 9 桁を使用するため、桁の合計が 0 を超えると次の桁の値を再グループ化することです。 9 進数システムでは 1 と 0 の 1 桁しか使用できないため、桁の合計が XNUMX を超える場合の次の桁の値。

二項加算の規則

次のトリックやルールを覚えていれば、XNUMX 進の足し算は XNUMX 進の足し算よりもはるかに簡単です。 これらの規則を使用すると、任意の XNUMX 進数を簡単に追加できます。 バイナリ加算の XNUMX つのルールは次のとおりです。

  • 0 + 0 = 0
  • 0 + 1 = 1
  • 1 + 0 = 1
  • 1 + 1 = 10

バイナリ加算はどのように行うのですか?

数字の 0 と 1 を使用する XNUMX 進数は、コンピューターでデータの格納と表現に使用されます。 二項加算の学習中には、次の XNUMX つのケースが発生します。

  • 再グループ化なしのバイナリ加算
  • 再グループ化によるバイナリ加算

再グループ化を行わないバイナリ値の加算

0 桁の合計が 1 または 101 の場合、2 つ以上のバイナリ値を追加するときに再グループ化する必要はありません。 (10)2 と (5)2 を追加しましょう。これらは、それぞれ XNUMX と XNUMX に相当する XNUMX 進数です。

ステップ1: 両方の数値のすべての桁を、桁の値に従って別々の列に書き込みます。

1 0 1

+ 1 0

----

----

ステップ2: 一番右の列の数字、1 と 0 から始めます。1 + 0 = 1 という XNUMX 進数の加算の規則の XNUMX つを適用します。

1 0 1

+ 1 0

----

1

----

ステップ3: 左の次の列に移動します。 ここでは、0 と 1 の 0 つの数字があります。上記のルールを見て、ここで適用されるルールを見つけてください。 1 + 1 = XNUMX という二項加算規則のいずれかを適用します。

1 0 1

+ 1 0

----

1 1

----

ステップ4: さて、最後の列には 1 つしか残っていないので、1 + 0 = 1 というルールを適用できます。

1 0 1

+ 1 0

----

1 1 1

----

したがって、(101)2 に (10)2 を足すと、最終的な答えとして (111)2 が得られます。

再グループ化によるバイナリ加算

0 つ以上の 1 進数の合計が 1001 または 2 より大きい場合は、再グループ化が必要です。 よりよく理解するために、111 進整数 (2)XNUMX と (XNUMX)XNUMX を足してみましょう。

ステップ 1: 以下に示すように、桁の値に従って、両方の XNUMX 進数のすべての桁を別の列に書き込みます。

1 0 0 1 

+ 1 1 1

.............

ステップ 2: 一番右の列から始めて、1 と 1 を足します。1 + 1 = 10 という 2 進数の足し算の規則に従います。これは 0₁₀ に相当します。 したがって、一番下に 1 を書き込み、XNUMX つは次の桁の値へのキャリーオーバーとして XNUMX を取ります。 

       1

1 0 0 1 

+ 1 1 1

.............

           0

ステップ 3: 左の次の列に移動します。 1 + 0 + 1 = 10 という 2 進数の加算規則に従います。これも 0₁₀ に相当します。 したがって、一番下に 1 を書き込み、XNUMX つは次の桁の値へのキャリーオーバーとして XNUMX を取ります。 

   1 1

1 0 0 1 

+ 1 1 1

.............

    0 0

ステップ 4: 左の次の列に再び移動します。 1 + 1 + 0 = 10 という 2 進数の加算規則に従います。これも XNUMX₁₀ に相当します。       

 1 1 1

1 0 0 1 

+ 1 1 1

.............

  0 0 0

ステップ 5: 再び左の次の列に移動します。 1 + 1 + 0 = 10 という 2 進数の加算規則に従います。これも 1₁₀ に相当します。 残りの最後の列なので、キャリーオーバーとして 10 を使用せず、代わりに、結果として下部に XNUMX を書き込みます。

  1 1 1

   1 0 0 1 

 + 1 1 1

...............。

 1 0 0 0 0

...............。

したがって、\[1001_{2} + 111_{2} = 10000_{2}\]

二項加算表

0 つの 1 進数 XNUMX と XNUMX を加算するための表を以下に示します。

xyx + y
000
011
101
110 (1 は繰り越される)

この表から、x と y が 0 つの 0 進数であることがわかります。 したがって、x = 0 および y = 0 の入力を与えると、出力は 1 に等しくなります。x = 1 または 0 かつ y = 1 または 1 の場合、x+y = 0 になります。ただし、x と y の両方が1 に等しい場合、それらの加算は 1 に等しくなりますが、キャリーオーバー数は 1 に等しくなります。これは、基本的に 10 進加算で 1 + XNUMX = XNUMX を意味し、XNUMX は次の桁に繰り越されます。

バイナリ加算の例

バイナリ加算のいくつかの例を次に示します。

例1: 10001 + 11101

解決法:

                1

      1 0 0 0 1

(+)1 1 1 0 1

--------

     1 0 1 1 1 0

例2: 10111 + 110001

解決法:

              1 1 1

            1 0 1 1 1

(+) 1 1 0 0 0 1

--------

   1 0 0 1 0 0 0

1 の補数を使用したバイナリ加算

  • 0 正の符号を表します
  • 1 負の符号を表します

正負の数の加算

ケース 1: 正の数の方が大きい場合

負の数の 1 の補数をとり、結果の合計の 1 の位にキャリーが追加されます。 結果にキャリーを追加すると、合計値が得られます。

例:

+ 1111 と -1101

+ 1 1 1 1 = 0 1 1 1 1

– 1 1 0 1 = 1 0 0 1 0 (1 の補数をとる)

              -------

                0 0 0 0 1

                              1

               -------

                0 0 0 1 0

したがって、解は + 0010 です。

  • ケース 2: 負の数の方が大きい場合

負の数の 1 の補数を取ります。この場合、エンドアラウンド キャリーはありません。 最後に、結果の 1 の補数を取ることによって合計が得られます。

例:

+ 1111 と -1101

– 1 1 1 1 = 1 0 0 0 0 (1 の補数をとる)

+1 1 0 1 = 0 1 1 0 1

------

1 1 1 0

------

1 0 0 1 0 (1の補数をとる)

XNUMX つの負の数の加算

両方の負の数の 1 の補数を取り、加算します。 桁上げ終了となり、符号ビットに 1 が生成されます。 合計値は、結果の 1 の補数を取ることによって取得できます。

例:

  • -1010 および – 0011
  • 1 0 1 0 = 1 0 1 0 1 (1 の補数をとる)
  • 0 0 1 1 = 1 1 1 0 0 (1 の補数をとる)

---------

                         1 0 0 0 1

                                      1

----------

                         1 0 0 1 0

----------

1 1 1 0 1 (1の補数をとる)

したがって、解決策は – 1101

XNUMX 進加算でのオーバーフロー

バイナリ加算でのオーバーフローは、しばしば最後のキャリー生成のように見えます。 一方、オーバーフローは合計が不正確になりますが、キャリーはそうではありません。 正しく理解されていない場合、これは少し当惑する可能性があります。 それでは、オーバーフローの概念をしっかりと把握しましょう。

ティーカップに半分入っているとします。 あなたの知人はお茶の入った容器を持っています。 彼は、あなたと彼のお茶の合計量を知りたがっています。 その結果、彼はお茶をあなたのカップに注ぎます。 ただし、お茶の全体の量は、カップのサイズよりも大きくなります。 あなたの友人があなたのカップにお茶を注いだとき、飲み物がこぼれ始めました。 ここで注意したいのは、容器の容量を超えて注ぐと溢れてしまうことです。 これは、XNUMX 進加算のオーバーフローの考え方に似ています。

これを理解するために例を挙げてみましょう。

バイナリ加算のオーバーフロー

オーバーフローの説明

前の例では、120 + 62 の加算を実行します。上の図に示すように、答えは 182 になるはずです。 一方、バイナリ加算は正しい合計を生成しませんでした。 さて、XNUMX 進演算の基本法則には従いましたが、どこで問題が発生したかを突き止めましょう。

数値の 8 ビット 2 の補数表現を使用しました。 各数値 (120、62) は、7 桁のビットを使用して表すことができ、残りの 0 ビットは符号用です (両方とも「182」)。 ただし、結果の大きさ (10110110 => 8) には 2 ビットが必要です。 8 の補数 8 ビット エンコーディングであるため、符号ビットは合計の 1 ビット目です。 合計の符号ビットは '74' であるため、負の数です。 さらに、合計のサイズは不正確です。 実際の結果が 182 であるのに、計算された合計は現在 -XNUMX です。これが発生した原因は何ですか?

これは、182 が 8 バイナリ ビットで表現できる符号付き数値の範囲外にあるために発生しました。 生成された合計 182 を 9 の補数形式で正確に表すには、2 ビットが必要です。 1 つの n ビット値から開始し、合計が n+XNUMX ビットになると、オーバーフローが発生します。 コンピューターでは、数値を保持するビット数が有限であり、有限値を XNUMX だけ超える結果を処理できないため、オーバーフローが問題になります。

オーバーフロー vs 最終キャリーアウト

哲学的には、オーバーフローとキャリーアウトは同義です。 どちらも、ソリューションが割り当てられた領域内に収まらないことを意味します。 最上位ビットが実行されると、実行が発生します。 最上位ビットへのキャリーがあると、オーバーフローが発生します。

これは、符号なし数値演算のインスタンスで見ることができます。 ただし、キャリーアウトの生成中に合計は変更されません。 キャリーフラグが立てられました。 結果を含むレジスタの内容は、キャリーとともに、適切な合計を生成します。

オーバーフローは、符号付き数値演算の状況で発生します。 しかしながら、オーバーフローの形成の結果として量が損なわれる。 オーバーフロー フラグが設定され、結果が間違っていることを示します。

結論は、

10 進加算は、XNUMX 進システムの基本操作の XNUMX つです。 すでにご存じのとおり、「二項演算」という用語は、XNUMX つのオペランドに対して実行される基本的な数学演算を指します。 XNUMX 進数の加算は、XNUMX つ以上の XNUMX 進数の整数を加算するのと同じように、数字の右側から数字を加算することによって実行されます。

  1. バイナリー取引: 仕組み
  2. 知識管理システム:詳細ガイド
  3. 15年のビジネスに最適な2023以上の電話番号
  4. 減価償却: 定義、計算方法、および原因。
  5. E-マーケティング:究極のガイド(更新)

参考文献 

コメントを残す

あなたのメールアドレスは公開されません。 必須フィールドは、マークされています *

こんな商品もお勧めしています