二進法をわかりやすく学ぶ!基本ルールや計算方法を徹底解説

二進法をわかりやすく学ぶPCとビットの図解イラスト

パソコンやスマートフォンの仕組みを学ぼうとしたとき、最初に壁になりやすいのが「二進法」ではないでしょうか。

普段私たちが使っている10進法とは考え方が異なるため、「なぜわざわざ0と1だけで表すのか」「どうやって計算や変換をするのか」と戸惑う方も少なくありません。

この記事では、二進法の基本的な仕組みや、10進法との変換手順、マイナスの数の表し方などをやさしく解説します。

二進法の基本を押さえると、コンピュータが情報を扱う仕組みが見えやすくなり、プログラミングやIT系資格の学習がスムーズに進むようになります。

この記事を読むと分かること
  • なぜコンピュータが二進法を使うのか
  • ビットやバイトの基本的な意味
  • 10進数と二進法の変換手順
  • 小数やマイナスを表す仕組み
目次

二進法とは?コンピュータが0と1を使う理由

10進法の数字と2進法の0・1を対比し、人間と機械の表現を示す図解

私たちが普段の生活で使っているのは、0から9までの10種類の数字を組み合わせる「10進法」です。

一方、コンピュータの世界では、0と1という2種類の値だけで情報を表す「二進法」が広く使われています。

では、なぜわざわざそのような仕組みが採用されているのでしょうか。

ここでは、コンピュータが二進法を使う背景と、基礎知識を整理していきます。

デジタル社会の基本!二進法は何のために使う?

デジタル社会の基盤として、電子回路の構造と無駄の排除を示す図解

コンピュータが二進法を使う最大の理由は、電子回路において「電気が流れていない状態(0)」と「流れている状態(1)」の2つの状態で情報を管理するほうが、圧倒的に効率が良く設計もシンプルになるためです。

コンピュータの内部にある膨大なスイッチのオン・オフを、そのまま0と1に対応させて計算や処理を行っています。

ノイズに強い仕組みとメリット

電圧の細かな段階と大きな段階を比べ、ノイズによる誤認識リスクを示す図解

仮にコンピュータ内部で、10進法のように10段階の電圧を厳密に使い分けようとすると、わずかな電圧の差を細かく判定しなければならなくなります。

しかし、実際の電子回路は温度の変化や外部のノイズ(雑音)の影響を受けやすいため、判定の境界が細かすぎると誤動作の原因になります。

その点、0と1の2段階で扱う方式であれば判定に余裕を持たせやすく、多少の電圧の揺れがあっても正しく読み取れるという大きなメリットがあります。

2値で扱う仕組みは、回路設計を単純にしやすく、安定した動作を実現しやすい点でも非常に合理的です。

2013年度 ディジタル電子回路講義ノート|筑波大学

最小単位のビット(bit)とバイト(byte)とは

1ビットから8ビットのまとまりを経て、1バイト256通りになる関係を示す図解

コンピュータが情報を0と1で表すとき、0か1のどちらか1つを入れられる最小の単位をビット(bit)と呼びます。

1ビットでは「0」か「1」の2通りしか表せませんが、複数のビットを組み合わせることで、より多くの情報を表現できるようになります。

また、現在のコンピュータでは1バイト(byte)を8ビットとして扱うのが一般的です。

8ビットを並べると、2の8乗である256通りのパターンを表せます。

文字データなどは文字コードによって扱いが異なりますが、まずは「ビットは最小単位」「バイトはそのまとまり」と覚えておけば十分です。

基本情報技術者試験などでいつ習う?

ネットワーク設定のIPアドレスが内部で0と1のビット列として扱われる様子を示す図解

ITパスポートや基本情報技術者試験などの国家資格では、二進数や補数表現、小数表現といった分野が学習対象に含まれています。

その背景には、ソフトウェア開発やネットワーク、セキュリティといった分野において、データがコンピュータ内部でどう表現されているかを理解することがすべての土台になるという考え方があります。

たとえば、IPアドレスの計算、ビット演算、データ型の上限・下限の理解、丸め誤差への配慮など、実務でも基礎知識として役立つ場面は多岐にわたります。

基本情報技術者試験(レベル2)シラバス Ver.9.0|情報処理推進機構(IPA)

【具体例】二進法と10進法の変換方法をわかりやすく図解

ここからは、私たちが普段使う10進数と、コンピュータ内部で使われる二進法をどのように変換するのかを見ていきます。

手順をひとつずつ確認すると、二進法は暗記よりもルールの理解で覚えやすくなります。

10進法から二進法へ変換する「すだれ算(筆算)」

10進数37を2で割り続け、余りを下から読む二進法変換の手順図

10進数の整数を二進法に変換するとき、手計算でよく使われるのが2で割り続けて余りを並べる筆算(すだれ算)です。

やり方はシンプルで、変換したい数を商が0になるまで2で割り、出た余りを書き出していきます。

最後に、余りを下から上へ読みます。

たとえば「37」を変換する場合は、次のように進みます。

  • 37 ÷ 2 = 商18 余り1
  • 18 ÷ 2 = 商9 余り0
  • 9 ÷ 2 = 商4 余り1
  • 4 ÷ 2 = 商2 余り0
  • 2 ÷ 2 = 商1 余り0
  • 1 ÷ 2 = 商0 余り1

下から順に余りを読むと 100101 となり、10進数の37は、二進法で100101であることがわかります。

二進法から10進法へ戻す「桁の重み」の計算

二進数1101の各桁に8・4・2・1の重みを掛けて13に戻す計算図

二進法を10進数へ戻すときは、各桁が持つ重みを使って計算します。

10進数では「一の位、十の位、百の位…」というように、左にいくほど重みが10倍になります。

一方、二進法では右端から順に1、2、4、8、16…と、左に進むごとに「2倍」になります。

たとえば「1101」を10進数に戻す場合は、次のように考えます。

  • 一番右の1:1 × 1 = 1
  • 右から2番目の0:0 × 2 = 0
  • 右から3番目の1:1 × 4 = 4
  • 一番左の1:1 × 8 = 8

これらを合計(1+0+4+8)すると「13」になり、二進法の1101は10進数で13です。

理解を定着させたい方は、桁ごとの重みを一覧で見ると整理しやすくなります。

スクロールできます
二進法の桁重みの計算実際の重み
右から1桁目2⁰1
右から2桁目2
右から3桁目4
右から4桁目8
右から5桁目2⁴16
右から6桁目2⁵32

16進法との関係性

コンピュータの世界では、二進法とあわせて「16進法」もよく登場します。

二進法は桁数が長くなりすぎて人間には読みにくいため、二進数の4桁(例:1111)を16進数の1桁(例:F)としてまとめて表現することがあります。

これは、プログラミングやWebデザインの色指定(カラーコード)などでよく見かける表現方法です。

コンピュータの計算の仕組み!小数やマイナスの表現

コンピュータ内部での計算(足し算・引き算)や、小数の扱い方について解説します。

二進法の小数表現と丸め誤差の注意点

10進数0.1が二進法で無限に続き、切り捨てで丸め誤差が生じる図解

整数の変換は比較的わかりやすいですが、二進法で小数を扱う場合は注意が必要です。

二進法の小数では、小数点より右に進むごとに重みが 1/2、1/4、1/8 のように半分ずつになっていきます。

逆に10進数の小数を二進法に変換するときは、小数部分に2を掛け続け、整数部分を順番に取り出します。

ただし、10進数では「0.1」のように扱いやすい小数でも、二進法に変換すると無限に続く小数(循環小数)になってしまい、有限桁で表せないことがあります。

コンピュータ内部では無限の桁を記憶できないため、近い値で近似して扱われます。

この近似によって生じるズレが「丸め誤差」です。

金額計算や高い正確性が必要な処理では、この丸め誤差によって結果が変わる場合があります。実務では、使用する言語・データベース・会計仕様などの公式ドキュメントもあわせて確認することが重要です。

マイナスを表現する「2の補数」

ビット列を反転して1を足し、2の補数でマイナスを表すステップ図

コンピュータでマイナス(負)の整数を扱う方法として、一般的によく使われるのが2の補数です。

作り方は次の2ステップです。

  1. 元のビット列の0と1をすべて反転する
  2. その結果に「1」を足す

たとえば、8ビットで「3」を 00000011 と表すなら、反転すると 11111100 となり、さらに1を足して 11111101 になります。

これが「-3」を表す2の補数です。

引き算を足し算として処理する仕組み

引き算専用回路を使わず、マイナスBを足し算回路で処理する仕組みの図解

なぜわざわざ2の補数を使うのかというと、引き算を足し算として処理しやすくするためです。

たとえば「A – B」という引き算は、「A + (-B)」として計算できます。

これにより、コンピュータは足し算の回路(加算器)を中心に構成できるようになり、回路設計が非常にシンプルになります。

詳しい回路設計まで踏み込まなくても、学習段階では「コンピュータは補数を使って、引き算を足し算に置き換えている」と理解しておくと、試験対策や基礎理解に役立ちます。

基本情報技術者試験 科目A サンプル問題|情報処理推進機構(IPA)

二進法 わかりやすくに関するよくある質問

二進法は暗記しないと理解できませんか?

暗記よりも、桁の重みと変換手順を理解するほうが大切です。10進数から変換する「2で割る方法」と、10進数へ戻すための「1・2・4・8の重み」を押さえると覚えやすくなります。

1バイトは必ず8ビットですか?

現在の実務やIT資格試験などでは、1バイト=8ビットとして扱うのが一般的です。ただし、歴史的には例外のシステムもありました。

なぜコンピュータは0.1を正確に表せないことがあるのですか?

10進数では有限な小数でも、二進法では無限に続く小数になる場合があるためです。その結果、近い値で近似して保持されるため、丸め誤差が生じます。

2の補数は何のために使うのですか?

マイナスの数を表しつつ、引き算を足し算として処理しやすくするためです。これにより、コンピュータの計算回路を整理しやすいという利点があります。

両手を使って二進法を指で数えることはできますか?

可能です。指を折った状態を「0」、伸ばした状態を「1」と見立てることで、両手の10本の指を使って1023(2の10乗 – 1)までの数字を数えることができます。

二進法は英語で何と言いますか?

英語では「binary(バイナリ)」と言います。IT用語でも、二進法で書かれたデータを「バイナリデータ」と呼ぶことがよくあります。

二進法を使った時計があるって本当ですか?

LEDの点灯(1)と消灯(0)の組み合わせで時刻を表現する「バイナリーウォッチ」が存在します。パズル感覚で時刻を読むユニークな時計として知られています。

まとめ:二進法の仕組みをわかりやすく復習しよう

この記事では、コンピュータの基礎となる二進法の考え方から、変換手順、ビットやバイトの意味、小数やマイナスの表現までを整理しました。

最初は0と1の並びが難しく感じられるかもしれませんが、見方のルールはシンプルです。

  • コンピュータが使う理由:ノイズに強く、回路の設計をシンプルにできるから
  • 10進数からの変換:2で割り続けて余りを下から読む(すだれ算)
  • 10進数への戻し方:右から1、2、4、8…という桁の重みを掛けて足す
  • マイナスの表現:ビットを反転して1を足す「2の補数」で引き算を足し算にする

「桁の重み」と「変換手順」を押さえることが理解の近道になります。

10進数からの変換、二進法からの復元、2の補数の考え方は、資格試験やプログラミング学習でも繰り返し登場しやすいポイントです。

まずは整数の変換から練習し、慣れてきたら小数や補数の理解へ進むと、二進法への苦手意識を減らしやすくなるでしょう。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次