数学の計算機
バイナリ計算機


バイナリ計算機

2進数と10進数の相互変換から、2進数の足し算・引き算・掛け算・割り算まで対応した便利な無料バイナリ計算機(2進数計算ツール)。プログラミングや情報処理の学習に必要な進数変換や演算を素早く正確に行えます。

回答

101110110

回答
2進数から10進数へ 10101010 = 170
10進数から2進数へ 170 = 10101010

計算にエラーがありました。

最終更新: 2026年6月3日

目次

  1. 使用方法
    1. バイナリ計算
    2. 2進数を10進数に変換する
    3. 10進数を2進数に変換する
  2. 2進数
  3. バイナリ変換
    1. 10進数から2進数への変換
    2. 2進数から10進数への変換
  4. バイナリ計算
    1. バイナリ加算
    2. バイナリ減算
    3. バイナリ乗算
    4. バイナリ除算
  5. 2進数の短い歴史
  6. 実際のアプリケーション

バイナリ計算機

この「2進数計算機(バイナリ計算機)」は、2進数に関するあらゆる計算と変換を簡単に行える便利なオンラインツールです。2進数の足し算(加算)、引き算(減算)、掛け算(乗算)、割り算(除算)はもちろん、2進数と10進数の相互変換を行うバイナリ変換機能も備えたオールインワンの計算機です。

使用方法

バイナリ計算

計算機の最初のセクションでは、2つの2進数を用いた四則演算(加算、減算、乗算、除算)を実行できます。計算を行うには、指定のフィールドに2進数を入力し、希望する計算記号(+、-、×、÷)を選択して「計算」ボタンをクリックします。計算結果は、2進数と10進数の両方で表示されます。

2進数を10進数に変換する

計算機の2番目のセクションでは、2進数(バイナリ値)を10進数に変換できます。変換したい2進数を入力し、「計算」ボタンをクリックするだけで瞬時に結果が表示されます。

10進数を2進数に変換する

計算機の3番目のセクションでは、10進数から2進数への変換を行います。変換したい10進数の整数を入力し、「計算」ボタンをクリックしてください。

なお、計算機の各セクションにある「クリア」ボタンを押すと、すべての入力フィールドがリセットされます。また、この計算機はすべての演算および変換において「整数」のみを対象としています。

2進数

2進数は「0」と「1」の2つの数字のみで構成される数値です。例えば「10001110101010」は2進数です。2進数を用いる記数法は「2進法(ベース2)」と呼ばれており、本ツールはその2進法に特化した計算機です。

基数2の2進数は、私たちが日常的に使用している「基数10」の10進数と同じ基本的な考え方で作られています。10進法では、0から始まり、1、2、3、4、5、6、7、8、9と数え進めます。9の次は新しい桁が追加され「10」になります。一方、2進法では使用できる数字が0と1しかありません。そのため、0、1と数えた後、これ以上使える数字がないため、すぐに次の桁へと進み「10」になります。

したがって、10進数の「2」は、2進数の「10」に等しくなります。2進数で「3」を表すには1を足して「11」とします。次に「4」を表す場合、1の位と2の位がともに繰り上がり、新たな桁が追加されて「100」となります。代表的な10進数と2進数の対応については、以下の表をご参照ください。

10進数 2進数
0 0
1 1
2 10
3 11
4 100
5 101
6 110

10進法と同様に、数値の先頭に「0」を追加してもその値自体は変わりません。例えば、10進数の「6」を「06」と書いても意味は同じです。同様に、2進数の「6」である「110」は、「0110」と記述しても数学的に同じ値を示します。

バイナリ変換

10進数から2進数への変換

10進数を2進数に変換する最も簡単な方法は、元の10進数を連続して2で割り、その余り(剰余)を記録していく方法です。商が0になるまで計算を続け、最後に得られた余りを逆順(下から上)に並べることで、2進数に変換できます。例えば、10進数の「17」を2進数に変換してみましょう。

  1. 17 ÷ 2 = 8 R1
  2. 8 ÷ 2 = 4 R0
  3. 4 ÷ 2 = 2 R0
  4. 2 ÷ 2 = 1 R0
  5. 1 ÷ 2 = 0 R1

すべての余り(R: Remainder)を逆順に並べると、「10001」という値が得られます。したがって、17₁₀ = 10001₂ となります(下付き文字は、それぞれの数値が何進法であるかを示しています)。

2進数から10進数への変換

2進数を10進数に変換するには、以下の手順に従います。わかりやすくするために、具体例を用いて解説します。ここでは「100101₂」を10進数に変換してみましょう。

  1. 2進数の左端(最上位)の桁から始めます。前の手順で得られた数値を2倍し、現在の桁の値を加算します。「100101」の場合、最初の左端の数字は「1」です。最初のステップでは前の数値が存在しないため、前の数値を0として計算します:(0 × 2) + 1 = 0 + 1 = 1
  2. 左から2桁目についても同様の計算を繰り返します。「100101」の左から2桁目は「0」です。前のステップで得られた数値は「1」なので、次のようになります:(1 × 2) + 0 = 2
  3. 続くすべての桁に対して同じ手順を繰り返します。最後の計算で得られた合計が、求める10進数の値となります。
1 (0 × 2) + 1 = 1 1
0 (1 × 2) + 0 = 2 2
0 (2 × 2) + 0 = 4 4
1 (4 × 2) + 1 = 9 9
0 (9 × 2) + 0 = 18 18
1 (18 × 2) + 1 = 37 37

最終的に、100101₂ = 37₁₀ となります。

バイナリ計算

バイナリ加算

2進法における足し算(加算)のルールは、10進法と同じ基本的な原則に従います。唯一の違いは、10進法では合計が10になったときに繰り上がるのに対し、2進法では合計が「2」に達した時点で次の桁へ繰り上がる点です。2進数の加算ルールは以下の通りです。

  • 0 + 0 = 0
  • 0 + 1 = 1
  • 1 + 0 = 1
  • 1 + 1 = 0 (1が次の桁に繰り越されます)

例:

バイナリ計算機

1001 + 1011 = 10100

バイナリ減算

2進数の引き算(減算)も10進数と同じルールに従い、引かれる数が引く数より小さい場合(0から1を引く場合など)に、上の桁から「借りる(ボロー)」処理が発生します。2進数の減算ルールは以下の通りです。

  • 0 – 0 = 0
  • 1 – 0 = 1
  • 1 – 1 = 0
  • 0 – 1 = 1 (上の桁から1を借ります)

上の桁から「1」を借りてくると、現在の桁では実質的に「2」として扱われるため、2 – 1 = 1 となります。例えば:

バイナリ計算機

1100 – 1001 = 0011 = 11

この例では、すぐ隣の上の桁が「0」であるため、そこから1を借りることができず、さらに上の桁から借りてくる必要があります。これにより、中間の桁は実質的に「2」になりますが、下の桁に1を貸すため「1」に減ります。画像の青い数字は、この借りる操作(ボロー)による桁の値の変化を表しています。

バイナリ乗算

2進数の掛け算(乗算)のルールは以下の通りです。非常にシンプルで、10進数の掛け算と同じ感覚で行えます。

  • 0 × 0 = 0
  • 0 × 1 = 0
  • 1 × 0 = 0
  • 1 × 1 = 1

例えば:

バイナリ計算機

バイナリ除算

2進数の割り算(除算)は、10進数の割り算の筆算と同じ規則に従います。10進法と同様に、2進法でも「0で割る」ことはできません。2進数の除算ルールは以下の通りです。

  • 0 ÷ 0 = 実行できません(計算不可)
  • 0 ÷ 1 = 0
  • 1 ÷ 0 = 実行できません(計算不可)
  • 1 ÷ 1 = 1

例えば、1111 ÷ 10 = 111 R1(余り1):

バイナリ計算機

2進数の短い歴史

2進数の歴史は、数学、哲学、そして現代のコンピューティングの進化と深く結びついています。17世紀後半、ドイツの数学者であり哲学者でもあったゴットフリート・ヴィルヘルム・ライプニッツによって、2進法は初めて体系化されました。ライプニッツは自身の論文「二進算術の説明」の中で、0と1の2つの数字だけを使ってすべての数を表現するシステムを提案しました。この2進システムは画期的な数学的発見でしたが、当時の社会ですぐに広く認識され、実用化されることはありませんでした。

発表から数世紀を経て、2進数は徐々に実用的な進化を遂げました。19世紀に入ると大きな進歩が見られましたが、その多くはイギリスの数学者ジョージ・ブールの功績によるものです。ブールは、後に「ブール代数(論理代数)」として知られる新しい代数体系を確立しました。この代数では2進変数(真と偽、1と0)が用いられ、後の電子回路やデジタル論理回路の開発における極めて重要な理論的基盤となりました。

2進数にとっての真のブレークスルーは、20世紀における電子計算機(コンピューター)の誕生とともに訪れました。1940年代から1950年代にかけて、ENIAC(エレクトロニック・ニューメリカル・インテグレーター・アンド・コンピューター)やUNIVAC(ユニバーサル・オートマチック・コンピューター)などの初期の電子コンピューターが開発されたことが決定的なターニングポイントとなりました。これらの初期のコンピューターは、データの処理と保存に2進数を採用し、コンピューティング技術に不可欠なシステムとして2進法を確立させました。

2進数の歴史におけるもう一つの重要なマイルストーンは、1930年代後半にジョン・アタナソフとクリフォード・ベリーによって開発された「アタナソフ・ベリー・コンピュータ(ABC)」です。ABCは計算に2進数を使用した世界初の電子計算機の一つでしたが、現代の定義で言う完全な汎用デジタルコンピューターではありませんでした。

コンピューター科学の分野が急速に拡大するにつれ、2進数の利用はデジタル技術において普遍的なものとなりました。今日では、シンプルな電卓から超高性能なスーパーコンピューターに至るまで、あらゆるデジタルシステムの中核を成しているのは2進数です。データエンコーディング、ネットワーク通信、デジタル信号処理など、現代の多様なテクノロジーにおいて欠かせない存在となっています。

ライプニッツの初期の理論的探求から、現代テクノロジーにおける広範な実用化に至るまでの歴史は、このシンプルでありながら強力な記数法が持つ計り知れない影響力を証明しています。複雑なデータや命令を「0」と「1」のわずか2つの記号だけで表現できる2進システムは、現代のコンピューティング、通信、そして私たちがデジタル世界とやり取りする方法を形作る、揺るぎない基盤であり続けています。

実際のアプリケーション

2進数は、コンピューターサイエンスやIT技術の枠を超え、私たちの社会活動のさまざまな分野で実際に応用されています。

コンピューターのメモリは、「オン」または「オフ」の状態を持つトランジスタで構成されています。2進数システムでは、「オン」が数字の「1」、「オフ」が数字の「0」として扱われます。 これにより、すべてのデータをバイナリコード(2進コード)として記憶・保存することが可能になります。例えば、「01101001」という8桁(8ビット)の2進数は、コンピューターのASCIIコードにおいて小文字のアルファベット「i」を表します。

デジタル画像を構成する各ピクセル(画素)は、特定の色(赤、緑、青)の強さを表す2進数の組み合わせで表現されています。例えば、シンプルな3ビットのRGBカラーモデルにおいて、白は「111」(10進数で7)というバイナリ値で表されます。これは、赤・緑・青の3つのカラーチャンネルがすべて最大強度であることを意味します。反対に、黒は「000」(10進数で0)で表され、すべてのカラーチャンネルが最小強度(光がない状態)であることを示します。

デジタル通信の分野では、送信したいメッセージの各文字を2進数に変換し、それを連続したビットストリーム(0と1の連続)として通信回線に流すことでデータを伝送します。データを受け取った側(受信機)は、そのビットストリームを解読(デコード)し、元のメッセージに復元します。

パソコン、スマートフォン、スマートテレビといったあらゆるデジタルデバイスは、内部でバイナリコードを使用してデータを表現し、演算処理を実行しています。この仕組みのおかげで、テキスト、音声、動画といった膨大な量の情報を高速かつ効率的に処理・保存できるようになっています。

2進数は電気通信インフラの基盤にもなっています。バイナリコード化されたデータは、光ファイバーケーブルや衛星通信などを介して長距離を瞬時に転送されます。これにより、世界中どこにいても高速で安定したインターネット接続や通話が実現しています。

製造業の現場では、産業用ロボットやCNC(コンピュータ数値制御)工作機械などの自動化設備の制御に2進数が使われています。これらの機械はバイナリコードで書かれたプログラム命令を解釈し、穴あけ、切断、溶接といったミクロン単位の精密なタスクを自動で実行します。

2進数は医療の分野でも活躍しています。CTスキャナー、MRI、デジタルX線撮影装置などの高度な医療機器は、バイナリコードを用いて人体のスキャンデータを処理し、精密な高解像度の医療画像として出力・分析を行っています。

交通や輸送の分野でも2進数は欠かせません。現代の自動車(スマートカー)には多数のコンピューター(ECU)が搭載されており、エンジン制御、エアコン、自動運転支援システム、カーナビゲーションなど、あらゆる機能がバイナリコードによって緻密に制御されています。

ライプニッツによって体系化された2進数の概念は、いまや私たちの日常生活において切り離せない重要な一部となっています。今日、2進数の存在は現代テクノロジーの根幹を支えるものであり、AIや量子コンピューティングなど、未来の新しい技術開発においても極めて重要な役割を果たし続けています。