【保存版】進数変換のやり方をゼロから完全解説!2進数・10進数・16進数の計算とコツ

「基本情報技術者試験の勉強を始めたけど、進数変換でつまずいた…」
「プログラミングで16進数が出てきて意味不明…」

安心してください。進数変換は、少し独特なルールがあるだけで、決して難しい数学ではありません。
この記事では、文系出身のエンジニアでも理解できるように、基礎の基礎から丁寧に解説します。

計算が面倒ならツールを使おう

理解した後の答え合わせや、実務での計算には変換ツールが便利です。

進数変換ツールを使う

1. そもそも「進数(基数)」って何?

進数とは、一言で言えば「桁上がりのルール」のことです。

私たちは普段、0〜9までの10個の数字を使っています。9の次は、位(くらい)を一つ上げて「10」と書きますよね。
これが10進数です。「10個集まったら桁上がりする」というルールです。

もし、このルールが「2個で桁上がり」なら2進数、「16個で桁上がり」なら16進数になります。ルールが違うだけで、数の大きさそのものが変わるわけではありません。

2. よく使う3つの進数(2・10・16)

コンピュータの世界で登場する主要なプレイヤーを紹介します。

種類 使う数字・文字 桁上がりのタイミング 主な用途
10進数 0 〜 9 9 の次 普段の生活
2進数 0, 1 1 の次 コンピュータ内部
16進数 0〜9, A〜F F の次 WEB色指定, メモリ
💡 16進数の「A〜F」って何?

数字は0〜9の「10個」しかありません。でも16進数には「16個」の文字が必要です。
足りない6個分を、アルファベットで代用しています。

F(15)の次で桁上がりして「10(イチゼロ)」になります。

3. 【計算】他進数から10進数へ(バラして足す)

2進数や16進数を、私たちに馴染みのある10進数に戻す方法です。
「位の重み(桁の価値)」を掛けて、全部足し合わせます。

[Image of binary to decimal conversion diagram]

例題:2進数「101」を10進数へ

  1      0      1
  ×      ×      ×
 2²     2¹     2⁰
(4)    (2)    (1)
 ↓      ↓      ↓
 4  +   0  +   1   =  5

答え: 5

右端から順に「1倍、2倍、4倍、8倍...」と重みが増えていくイメージです。

4. 【計算】10進数から他進数へ(割り算)

逆に、10進数を2進数や16進数にするには、「すだれ算(逆割り算)」を使います。

例題:10進数「13」を2進数へ

2で割り続け、余りを記録していきます。

2 ) 13
2 )  6 ... 余り 1  ↑
2 )  3 ... 余り 0  | 下から
2 )  1 ... 余り 1  | 上に読む
     0 ... 余り 1  |

答え: 1101

「商が0になるまで」続けるのがポイントです。16進数にしたい場合は、16で割り続けます。

5. 【裏技】2進数と16進数の変換(4桁区切り)

情報処理試験やプログラミングの実務で最も重要なのがこれです。
ここには計算不要の裏技があります。

2進数の「4桁」 = 16進数の「1桁」

例題:2進数「11011011」を16進数へ

計算はしません。4つずつ区切って、対応するものに置き換えるだけです。

手順
  1. 4桁で区切る: 11011011
  2. それぞれ変換: D (13) | B (11)
  3. くっつける: DB
答え: DB₁₆

まとめ

進数変換は、一度仕組みを理解してしまえば、パズルのように解くことができます。

まずはこの3つのルールを覚えておけば、基本情報技術者試験や実務の基礎としては十分です。
慣れないうちは、計算ミスを防ぐためにツールを使って検算しながら練習することをおすすめします。

さっそく、色々な数字を変換して遊んでみましょう!

16進数変換ツール