MCPで接続 →

計算を入力してください

公式

広告

結果

2進数の計算結果
-101
1つ目の2進数 10 (2)
2つ目の2進数 111 (7)
演算 引き算
2進数での結果 -101
10進数での結果 -5

計算の内訳:

10 (2) - 111 (7) = -101 (-5)

この2進数計算機でできること

この2進数計算機を使えば、2つの2進数(0と1の数字だけで表す、基数2の数)の四則演算を手軽に行えます。2つの2進数を入力し、足し算・引き算・掛け算・割り算の4種類から1つを選ぶだけで、答えを2進数とその10進数換算の両方で表示し、さらに計算の流れもわかりやすく示します。

入力項目について

  • 1つ目の2進数 – 左側の値です。例:1010
  • 演算 – 足し算・引き算・掛け算・割り算から選びます。
  • 2つ目の2進数 – 右側の値です。例:11

入力できるのは0と1の数字だけです。それ以外の文字が含まれている場合、計算機は結果の代わりに「無効な2進数の入力」と表示します。

計算の仕組み

この計算機は、内部でビットごとの計算を行っているわけではありません。次の3つのシンプルな手順で答えを導きます。

$$\text{Result}_2 = \left( \text{Binary}_1 \right)_2 + \left( \text{Binary}_2 \right)_2$$

$$\text{Result}_2 = \left( \text{Binary}_1 \right)_2 - \left( \text{Binary}_2 \right)_2$$

$$\text{Result}_2 = \left( \text{Binary}_1 \right)_2 \times \left( \text{Binary}_2 \right)_2$$

$$\text{Result}_2 = \left\lfloor \frac{\left( \text{Binary}_1 \right)_2}{\left( \text{Binary}_2 \right)_2} \right\rfloor$$

  • 10進数に変換: それぞれの2進数の文字列を、基数2の整数として読み取ります。
  • 演算を適用: 2つの10進数の値で足し算・引き算・掛け算・整数の割り算を行います。割り算は整数(切り捨て)方式なので、余りは切り捨てられます。また、0で割ろうとした場合は「0による除算」と表示されます。
  • 再び2進数に変換: 計算結果を10進数から2進数の文字列に変換して表示し、あわせて10進数の結果も示します。
広告
繰り上がりを伴い桁ごとに示した2進数の足し算
2進数の足し算は桁ごとに行い、合計が2に達すると次の桁へ1を繰り上げます。

計算例

たとえば、1つ目の2進数を1010、演算を掛け算、2つ目の2進数を11とします。

  • 1010は10進数で10
  • 11は10進数で3
  • \(10 \times 3 = 30\)。
  • 30を2進数に戻すと11110

したがって計算機は、結果を11110(2進数)と30(10進数)で表示します。

2のべき乗の位に対応する2進数の桁を合計して10進数にする図
各2進数の桁は2のべき乗に対応し、立っている桁を足すと10進数の値になります。

二進法・十進法変換表

二進法では、すべての桁(ビット)は2の累乗を表します。二進数を右から左に読むと、桁の値は \(2^0=1,\ 2^1=2,\ 2^2=4,\ 2^3=8,\ 2^4=16,\ \dots\) です。十進法での等価値を見つけるには、1が現れる場所の桁の値をすべて足します。

一般的な値

二進法 十進法
0 0
1 1
10 2
11 3
100 4
101 5
110 6
111 7
1000 8
1001 9
1010 10
1011 11
1100 12
1101 13
1110 14
1111 15

桁の値(2の累乗)

二進法 累乗 十進法の重み
1 \(2^0\) 1
10 \(2^1\) 2
100 \(2^2\) 4
1000 \(2^3\) 8
10000 \(2^4\) 16
100000 \(2^5\) 32
1000000 \(2^6\) 64
10000000 \(2^7\) 128
100000000 \(2^8\) 256

さらに詳しい例

加算:1011 + 110

各オペランドを十進法に変換し、加算してから、二進法に戻します。

  1. \(1011_2 = 8+2+1 = 11_{10}\)
  2. \(110_2 = 4+2 = 6_{10}\)
  3. 加算:\(11 + 6 = 17_{10}\)
  4. 戻す:\(17_{10} = 16+1 = 10001_2\)

桁ごとの加算でもこれを確認できます — \(1011 + 0110\) を加算すると上位の桁にキャリーが発生し、10001(十進法で17)が得られます。

負の結果が出る減算:10 − 111

第2の数が大きい場合、結果は負になります。

  1. \(10_2 = 2_{10}\)
  2. \(111_2 = 7_{10}\)
  3. 減算:\(2 - 7 = -5_{10}\)
  4. 絶対値を戻す:\(5_{10} = 101_2\)なので、答えは \(-101_2\) です

\(10 - 111\) の結果は二進法で-101(十進法で \(-5\))です。

余りを切り捨てる整数除算:111 ÷ 10

二進法の整数除算は商のみを保持し、余りを捨てます。

  1. \(111_2 = 7_{10}\)
  2. \(10_2 = 2_{10}\)
  3. 除算:\(7 \div 2 = 3\) 余り \(1\);余りの \(1\) は捨てられます
  4. 商を戻す:\(3_{10} = 11_2\)

つまり \(111 \div 10 = \)11で二進法(十進法で3、余り1は捨てられた)です。

広告

重要用語の説明

二進法(基数2)
0と1のみの桁を使う数体系です。各位置は2の累乗を表し、0~9の桁を使う十進法(基数10)体系とは異なります。
ビット
単一の二進桁 — 0または1です。コンピュータの最小データ単位です。
最上位ビット(MSB)
二進数の左端のビット。最大の桁の値を持ち、数値の大きさに最も大きな影響を与えます。
最下位ビット(LSB)
右端のビット。桁の値は \(2^0=1\) です。最小の影響を持ち、その数が奇数か偶数かを決定します。
キャリー
列内の2つのビットの合計が2以上の場合、超過分は次の上位の列に繰り上げられます。二進法では \(1+1=10\) なので、その列は0を表示し、1が左に繰り上げられます。
桁の値
各桁位置に割り当てられた重み。2の累乗に等しく、右から左へ読むと \(1, 2, 4, 8, 16, \dots\) です。
整数(切り捨て)除算
整数商のみを返し、余りを捨てる除算です。たとえば \(7 \div 2 = 3\) で、余りの1は捨てられます。
十進法での等価値
二進数の基数10の値。1が現れる場所の桁の値を合計して求めます — たとえば \(1011_2 = 8+2+1 = 11_{10}\)。

よくある質問

割り算で余りはどうなりますか? 割り算は整数ベースで行うため、小数部分は切り捨てられます。たとえば111(7)÷10(2)の答えは11(3)となり、3.5にはなりません。

マイナスの結果になることはありますか? はい。小さい数から大きい数を引くと10進数の値はマイナスになり、それが表示される2進数の表記にも反映されます。

なぜ「無効な2進数の入力」と表示されるのですか? 入力欄に使えるのは0と1の数字だけだからです。スペースや小数点、2〜9などの数字が含まれているとこのメッセージが出ますので、入力内容をもう一度確認してください。

最終更新: