BASE CONVERSION

基数変換の基本

2進数・10進数・16進数は、使う数字の種類と桁の重みが違います。

問題を解きたい方:
→ 基数変換を練習する

2進数とは

0と1だけを使い、右から順に1、2、4、8、16…という重みを持ちます。

1011₂ = 8 + 0 + 2 + 1 = 11₁₀

10進数から2進数

2の累乗の組み合わせとして考えると理解しやすくなります。

13 = 8 + 4 + 1
→ 1101₂

16進数

0〜9に加えてA〜Fを使います。A=10、B=11、…、F=15です。

2F₁₆ = 2 × 16 + 15 = 47₁₀
覚え方
2進数4桁は16進数1桁に対応します。
例:1111₂ = F₁₆

基数変換を解く基本手順

まず「何進数から何進数へ変換するか」を確認します。2進数・16進数間は4bit単位の対応を使い、10進数を経由する場合は各桁の重みを意識します。

具体例:2進数から10進数

101101₂ = 1×2⁵ + 0×2⁴ + 1×2³ + 1×2² + 0×2¹ + 1×2⁰
= 32 + 8 + 4 + 1 = 45₁₀

具体例:2進数と16進数

1011 1100₂ は4bitずつ区切ると 1011=B、1100=C なので BC₁₆です。逆変換ではB→1011、C→1100と戻します。

10進数から2進数へ変換する方法

10進数を2で繰り返し割り、余りを下から上へ読みます。たとえば13なら、13÷2=6余り1、6÷2=3余り0、3÷2=1余り1、1÷2=0余り1となるため、13₁₀=1101₂です。16進数へ変換するときは16で割った余りを同じように使い、10〜15の余りをA〜Fで表します。

変換後の確認方法

答えを出したら逆変換して元の値へ戻るか確認すると、桁の読み違いやA〜Fの変換ミスを見つけやすくなります。特に試験では、計算後の短い検算が有効です。

よくある間違い

桁の重みを右から2⁰で始める
2進数を10進数へ変換するとき、右端は2¹ではなく2⁰です。また16進数のA〜Fは10〜15を表します。

試験でのポイント

2進数↔16進数は10進数を経由せず、4bit対応を使う方が速くてミスも減らせます。

2進数とは?

2進数は、0と1の2種類の数字だけで数を表す方法です。10進数では10になると桁が上がりますが、2進数では2になると桁が上がります。たとえば10進数の2は2進数では「10」、10進数の5は2進数では「101」と表します。

2進数の各桁は何を表している?

2進数は右端から順に、20、21、22、23…という重みを持ちます。つまり右から1、2、4、8、16…です。各桁が1ならその値を足し、0なら足しません。

例:101101₂を10進数に変換
101101₂ = 1×25 + 0×24 + 1×23 + 1×22 + 0×21 + 1×20
= 32 + 8 + 4 + 1 = 45₁₀

10進数とは?

10進数は、普段の生活で使っている0〜9の10種類の数字で数を表す方法です。9の次が10、99の次が100になるように、10になるたびに桁が上がります。2進数や16進数を学ぶときは、普段使っている10進数を基準にすると値の大きさを確認しやすくなります。

16進数とは?なぜA〜Fを使う?

16進数は0〜9に加えてA〜Fを使い、16種類の記号で数を表します。A=10、B=11、C=12、D=13、E=14、F=15です。16になると桁が上がるため、10進数の16は16進数では「10」と表します。

2進数4桁(4bit)では0000〜1111、つまり10進数の0〜15を表せます。そのため2進数4桁と16進数1桁を対応させると、長い2進数を短く表現できます。

2進数から10進数へ変換する方法

右端を20として各桁の重みを求め、1になっている桁の値を足します。たとえば1101₂なら、8 + 4 + 1 = 13なので13₁₀です。右端を21から始めないよう注意しましょう。

10進数から2進数へ変換する方法

10進数を2で繰り返し割り、その余りを下から上へ読みます。

例:13₁₀を2進数に変換
13 ÷ 2 = 6 余り1
6 ÷ 2 = 3 余り0
3 ÷ 2 = 1 余り1
1 ÷ 2 = 0 余り1
余りを下から読むと1101₂です。

2進数と16進数を変換する方法

2進数から16進数へ変換するときは、右から4桁ずつ区切ります。たとえば10111100₂なら「1011」と「1100」に分けます。1011はB、1100はCなので、BC₁₆です。逆に16進数から2進数へ変換するときは、16進数1桁をそれぞれ4bitへ置き換えます。

基数変換で初心者が間違えやすいポイント

① 2進数の「10」を十と読まない
10₂は10進数では2です。何進数の値なのかを必ず確認します。
② 10進数→2進数の余りを上から読まない
2で割って求めた余りは、最後の余りから逆順に読みます。
③ 16進数のA〜Fを文字として扱わない
A〜Fはそれぞれ10〜15を表す数字として使われます。

基本情報技術者試験などの学習ではどう覚える?

公式だけを暗記するより、2進数・10進数・16進数を実際に相互変換して慣れる方が理解しやすくなります。特に「2進数→10進数」「10進数→2進数」「2進数↔16進数」の3パターンを繰り返し解き、途中式まで自分で書ける状態を目指しましょう。

理解したら練習
2進数・10進数・16進数を実際に変換してみましょう。