私たちが普段使っている数字は「10進数」です。1から9までの数字を使い、桁が上がるごとに「10倍」されていく仕組みです。ところが、コンピュータの世界では「2進数」が基本です。2進数は「0」と「1」だけで数を表すため、一見すると馴染みにくく感じるかもしれません。しかし、実は仕組みを理解すればとてもシンプルで、手計算でも簡単に変換できます。この記事では、10進数と2進数の違いから始め、変換方法や計算のコツ、さらには練習問題までを詳しく解説します。これを読めば、あなたも10進数と2進数の変換に自信が持てるようになるでしょう。
10進数とは?
10進数は、私たちが日常生活で使っている数字の表記方法です。
「基数」が10で、0から9までの数字を使い、桁が一つ上がるごとに10倍の値を持ちます。
たとえば、数字 345 は次のように表せます。
- 3 × 10² = 300
- 4 × 10¹ = 40
- 5 × 10⁰ = 5
- 合計 = 345
この仕組みを「位取り記数法」と呼びます。10進数は、古代から人間が使ってきた最も自然な数の表現方法です。
2進数とは?
2進数は「基数」が2の数の表し方です。使う数字は「0」と「1」だけ。
桁が一つ上がるごとに2倍の値を持ちます。
たとえば、2進数 1011 を10進数に直すと以下のようになります。
- 1 × 2³ = 8
- 0 × 2² = 0
- 1 × 2¹ = 2
- 1 × 2⁰ = 1
- 合計 = 11
つまり 1011(2進数)= 11(10進数) となります。
コンピュータは電気信号を扱っており、「ON=1」「OFF=0」という単純な仕組みが2進数と非常に相性が良いため、内部ではすべて2進数で処理されます。
10進数から2進数への変換方法
10進数を2進数に変換する方法は、「2で割って余りを記録する」手順を繰り返すやり方です。
手順
- 10進数の数を2で割る。
- 余り(0または1)を記録する。
- 商をさらに2で割る。
- 商が0になるまで繰り返す。
- 出てきた余りを下から上に並べると2進数になる。
例:10進数「25」を2進数に変換
- 25 ÷ 2 = 12 … 余り1
- 12 ÷ 2 = 6 … 余り0
- 6 ÷ 2 = 3 … 余り0
- 3 ÷ 2 = 1 … 余り1
- 1 ÷ 2 = 0 … 余り1
余りを下から上に読むと 11001。
つまり、25(10進数)= 11001(2進数)。
2進数から10進数への変換方法
2進数を10進数に直すのはもっとシンプルです。各桁に「2の累乗」を掛けて足すだけです。
例:2進数「11001」を10進数に変換
- 左から順に桁を見ていく。
- 1 × 2⁴ = 16
- 1 × 2³ = 8
- 0 × 2² = 0
- 0 × 2¹ = 0
- 1 × 2⁰ = 1
- 合計 = 25
つまり、11001(2進数)= 25(10進数)。
よく使う2進数と10進数の対応表
変換を覚えるには、よく出てくる数字を表で押さえておくのがおすすめです。
10進数 | 2進数 |
---|---|
0 | 0 |
1 | 1 |
2 | 10 |
3 | 11 |
4 | 100 |
5 | 101 |
6 | 110 |
7 | 111 |
8 | 1000 |
9 | 1001 |
10 | 1010 |
15 | 1111 |
16 | 10000 |
31 | 11111 |
10進数から2進数へ変換する練習問題
練習をすることで、自然と変換に慣れていきます。
- 10進数「13」を2進数に変換
→ 1101 - 10進数「42」を2進数に変換
→ 101010 - 10進数「100」を2進数に変換
→ 1100100
2進数から10進数へ変換する練習問題
- 2進数「1010」を10進数に変換
→ 10 - 2進数「1111」を10進数に変換
→ 15 - 2進数「1100100」を10進数に変換
→ 100
計算を早くするコツ
- 2の累乗を覚える
2⁰=1、2¹=2、2²=4、2³=8、2⁴=16、2⁵=32、2⁶=64、2⁷=128…。
この一覧を覚えておけば、すぐに計算できます。 - 暗算でできるようにする
よく使う小さな数は暗記しておくとスピードアップにつながります。 - 2進数を「桁ごとの重み」で捉える
例えば「1001」は「8+1」と見ればすぐに「9」とわかります。
応用:16進数との関係
実際のプログラミングでは、2進数だけでなく「16進数」もよく使われます。
16進数は「0〜9」「A〜F」の16種類の記号で表す方法で、2進数4桁を1桁の16進数に対応させられるため、見やすく整理できます。
例:
- 2進数「1111」= 10進数「15」= 16進数「F」
- 2進数「1010」= 10進数「10」= 16進数「A」
まとめ
10進数と2進数の変換は、コンピュータの基本を理解する第一歩です。
最初は少し難しく感じるかもしれませんが、仕組みはとてもシンプルです。
- 10進数 → 2進数は「2で割り続けて余りを逆順に並べる」
- 2進数 → 10進数は「2の累乗を掛けて足す」
このルールさえ覚えれば、誰でも変換できます。さらに16進数を絡めて理解すれば、プログラミングやネットワークの学習にも役立ちます。
練習を重ねれば、数字を見るだけで変換が頭に浮かぶようになります。ぜひこの記事を参考に、10進数と2進数の世界を身近に感じてみてください。