以下の電卓を使用して、2つのバイナリ値の加算、減算、乗算、除算を実行したり、バイナリ値を10進数に変換したり、その逆を実行することができます。
Binary Calculation-Add, Subtract, Multiply, 5835>
2値を10値に変換する
10値を2値に変換する
関連 Hex Calculator|IP Subnet Calculator
2進法は人々がより精通しているだろう10進数とほぼ同じ機能を持つ数値システムである。 10 進法では基数として 10 を使用しますが、2 進法では 2 を使用します。 また、10進法が0から9までの数字を使うのに対し、2進法では0と1しか使わず、各桁をビットと呼びます。 これらの違いを除けば、足し算、引き算、掛け算、割り算などの演算は、すべて10進法と同じルールで計算されます。
ほとんどすべての現代の技術とコンピュータは、論理ゲートを使用したデジタル回路への実装が容易なことから、2 進法を使用しています。 オンとオフ(または真/偽、存在/不在など)の2つの状態を検出するだけでよいハードウェアを設計するのは、はるかに簡単です。 10進法の場合、0から9までの10種類の状態を検出するハードウェアが必要となり、より複雑になります。
以下は、2進数と10進数の代表的な変換例です。
2進/10進変換
Decimal | Binary |
0 | |
1 | 1 |
2 | 10 |
3 | 11 |
4 | 100 |
7 | 111 |
8 | 1000 |
10 | 1010 |
16 | 10000 |
20 | 10100 |
二進法の作業は、最初は混乱するかもしれませんが、次のようになります。 10進法の1桁が10nであるように、2進法の1桁が2nであることを理解すれば、理解しやすいはずです。 たとえば、数字の8を考えてみましょう。 10進法では、8は小数点以下1桁目に位置し、100位を意味します。 つまり、
8 × 100 = 8 × 1 = 8
比較のために18を使うと、
(1 × 101) + (8 × 100) = 10 + 8 = 18
2進数では8は1000と表されます。 右から左へ読むと、最初の0は20、2番目は21、3番目は22、4番目は23を表し、10進法と同じですが、底が10ではなく2になっています。 23=8なので、その位置に1を入力すると1000となる。 18、つまり10010を例にすると、
18 = 16 + 2 = 24 + 21
10010 = (1 × 24) + (0 × 23) + (0 × 22) + (1 × 21) + (0 × 20) = 18
10 進法から 2 進法への変換は、ステップバイステップで行うことができます。
- 与えられた数
- 与えられた数からその値を引きます
- ステップ 2 で見つかった余りの中で最大の 2 のべき乗を見つけます
- 余りがなくなるまで繰り返します
- 見つかった各 2 進位の値に対して 1 を入力します。 残りは0
ターゲットを再び18とした場合のイメージ図を以下に示す。
2n | 24 | 23 | 22 | 21 | 20 |
18 | 1 | 0 | 1 | ||
対象者。 18 | 18 – 16 = 2 | → | 2 – 2 = 0 |
2 進法から 10 進法に変換する方が簡単です。 1が出現する位取り値をすべて決定し、その和を求めます。
ex: 10111 = (1 × 24) + (0 × 23) + (1 × 22) + (1 × 21) + (1 × 20) = 23
24 | 23 | 22 | 21 | 20 |
1 | 0 | 1 | ||
16 | 0 | 4 | 2 |
Hence: 16 + 4 + 2 + 1 = 23.
2進加算
2進加算は、加算した値が10になったときに1を繰り越すのではなく、加算結果が2になったときに繰り越すことを除いて、10進法の加算と同じルールに従います。 下の例を参照してください。
2進法では、次のことに注意してください。
- 0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 0、1 を繰り越す、すなわち、次のようになります。 10
ex:
10 | 11 | 11 | 10 | 1 | ||
+ | 1 | 0 | 1 | 1 | 1 | |
= | 1 | 0 | 1 | 0 |
2進法と10進法の加算で実際に異なるのは2進法での値2は10進法での10と同等ということだけである。 上付き文字の1は繰り越される桁を表していることに注意してください。 2進法の足し算でよくある間違いは、「1+1=0」の場合にも、その右側に前の列から繰り越された1があることだ。 これは上の例の右から3番目の列に見られます。
2進法の引き算
2進法の加算と同様に、2進法と10進法の引き算も0と1しか使わないことによる違いを除けば、ほとんど違いはありません。 2進法の引き算で、借用が必要なのは0から1を引く場合だけです。この場合、借用する列の0は実質的に「2」になり(0-1を2-1=1に変える)、借用する列の1が1減少します。次の列も0であれば、値が1である列を0にできるまで続く列を借用しなければなりません。以下の例を参照して説明してください。
- 0 – 0 = 0
0 – 1 = 1、1を借りて、結果的に-1を繰り越す
1 – 0 = 1
1 – 1 = 0
EX1:
-11 | 20 | 1 | 1 | 1 | ||
– | 0 | 1 | 1 | 0 | 1 | |
= | 0 | 1 |
ex2:
-11 | 2-10 | 0 | ||
– | 0 | 1 | 1 | |
= | 0 | 1 |
なお、表示されている上付き文字は、借用時に各ビットに発生する変化量である。
2進法乗算
2進法乗算は10進法乗算よりも間違いなく単純である。 使用する値は0と1だけなので、足す結果は最初の項と同じか0である。その後の各行では、10進数の掛け算と同じように、プレースホルダーの0を足して、値を左にシフトさせる必要があることに注意する。 2進法の乗算が複雑なのは、各項目のビット数に依存した面倒な2進法の足し算が原因です。 下の例を参考にしてください。
2進法では、次のようになります。
- 0 × 0 = 0
0 × 1 = 0
1 × 0 = 0
1 × 1 = 1
ex:
1 | 0 | 1 | 1 | 1 | |||
× | 1 | 1 | |||||
1 | 0 | 1 | 1 | 1 | |||
+ | 1 | 0 | 1 | 1 | 1 | 0 | |
= | 1 | 0 | 0 | 1 |
上の例からわかるように、このようなことはない。 2進数の乗算は10進数の乗算と同じです。 2行目に0というプレースホルダーが書かれていることに注意してください。 通常、10進法の乗算では0プレースホルダーは視覚的に存在しません。 この例でも同じことができますが(0 のプレースホルダーを明示的にではなく、仮定して)、0 はこのページで提供されているような 2 進法の加算/減算計算機に関係するので、この例で取り上げています。 0が表示されていないと、上に表示されている2進数の値を足すときに、0を除外してしまうというミスが起こり得ます。 2進法では、1の右側にある0は関連性があり、値の最後の1の左側にある0は関連性がないことに、もう一度注意してください。
EX:
- 1 0 1 0 1 0 0
= 0 1 0 1 0 1 1 0 0
≠ 1 0 1 1 0 0 0
Binary Division
2進法の除算は10進法の長割と似ています。 配当はやはり同じように除数で割られますが、唯一の大きな違いは10進法の引き算ではなく、2進法の引き算を使うことです。 2進法での割り算を行うには、2進法の引き算をよく理解することが重要であることに注意してください。 以下の例や2進法の引き算の項を参照し、理解してください。