![](https://medium-company.com/wp-content/uploads/2019/06/081807-300x294.png)
今回のテーマは、ITパスポート試験で時々出題される「基数変換」についてです。
![](https://medium-company.com/wp-content/uploads/2019/06/092179-232x300.png)
2進数や10進数などのことですよね...初心者には難しい...
目次
基数とは?
私たちが普段使っている0~9で表現される10種類の数値は「10進数」と呼ばれています。それに対し、コンピュータが扱う「0」と「1」で表現された数値を「2進数」と呼びます。
![2進数とは](https://medium-company.com/wp-content/uploads/2020/10/tow_base.png)
基数とは、数値を表現する際に位取りの基準となる数のことであり、2進数や10進数などの「n進数」のnの部分を基数といいます。
コンピュータが扱う「2進数」は、「01010100010101110010011111...」のように桁数が非常に多くなるため、人にとって扱いにくいものです。そこで人が考えるときは、2進数と簡単に変換できる「16進数」などが使われています。
10進数 | 0~9の10種類で表現され、9の次が桁上がりする |
2進数 | 0と1の2種類で表現され、1の次が桁上がりする |
16進数 | 0~9の数字とA、B、C、D、E、Fの英字の16種類で表現され、Fの次に桁上がりする |
2進数・10進数・16進数の対応表
10進数と2進数、16進数の関係は、次の表のとおりです。
10進数 | 2進数 | 16進数 |
0 | 0 | 0 |
1 | 1 | 1 |
2 | 10 | 2 |
3 | 11 | 3 |
4 | 100 | 4 |
5 | 101 | 5 |
6 | 110 | 6 |
7 | 111 | 7 |
8 | 1000 | 8 |
9 | 1001 | 9 |
10 | 1010 | A |
11 | 1011 | B |
12 | 1100 | C |
13 | 1101 | D |
14 | 1110 | E |
15 | 1111 | F |
16 | 10000 | 10 |
基数変換
基数変換とは、ある進数で表現されている数値を、別の進数に変換することです。
例えば、10進数で表現された数値を2進数に変換するなど、ITパスポート試験では、基数変換の問題が時々出題されます。
10進数から2進数への基数変換
10進数から2進数への基数変換は、次の手順で求めます。
- 10進数の値を2で割る
- 商が0になるまで①を繰り返す
- 余りを下から並べる
例えば、10進数の「11」を2進数に基数変換してみましょう。
![10進数から2進数への変換方法](https://medium-company.com/wp-content/uploads/2020/10/10sin-2sin_-1024x532.png)
手順①~③をおこなった結果、10進数「11」は、2進数に基数変換すると「1011」です。
2進数から10進数への基数変換
2進数から10進数への基数変換は、次の手順で求めます。
- 2進数の各桁に2進数の桁の重みを掛けていく
- ①の結果を足す
桁の重みとは、各桁の単位のことで、10進数で例えると「100の位」「10の位」「1の位」など、「~の位」を桁の重みといいます。
10進数で見てみると、桁が増えるごとに10倍ずつ増えていきます。
![10進数の桁の重み](https://medium-company.com/wp-content/uploads/2021/08/binary_weight3.png)
2進数も同じ考え方です。2進数では、桁が増えるごとに2倍ずつ増えています。
![桁の重み2進数](https://medium-company.com/wp-content/uploads/2021/08/binary_weight2.png)
例えば、2進数「1011」を10進数に基数変換してみましょう。
![2進数から10進数への基数変換](https://medium-company.com/wp-content/uploads/2025/02/2068249da60373c6cc1724166d05c840.png)
手順①~②をおこなった結果、2進数「1011」は、10進数に基数変換すると「11」です。
10進数から16進数への基数変換
10進数から16進数へ基数変換する手順は、10進数から2進数への基数変換と同じです。
- 10進数の値を16で割る
- 商が0になるまで①を繰り返す
- 余りを下から並べる
例えば、10進数の「45」を16進数に基数変換してみましょう。
![10進数から16進数へ基数変換](https://medium-company.com/wp-content/uploads/2025/02/c386f10c348c14ec3808761c397c6c32-1024x355.png)
手順①~③をおこなった結果、10進数「45」は、16進数に基数変換すると「2D」です。
16進数から10進数への基数変換
16進数から10進数へ基数変換する手順は、2進数から10進数への基数変換と同じです。
- 16進数の各桁に16進数の桁の重みを掛けていく
- ①の結果を足す
例えば、16進数「2D」を10進数に基数変換してみましょう。
![16進数から10進数へ基数変換](https://medium-company.com/wp-content/uploads/2025/02/873c5e8f168292389632c4f2f60dab61.png)
手順①~②をおこなった結果、16進数「2D」は、10進数に基数変換すると「45」です。
練習問題
ITパスポート令和2年秋期 問62
10進数から2進数への基数変換は、次の手順で求めます。
- 10進数の値を2で割る
- 商が0になるまで①を繰り返す
- 余りを下から並べる
それでは、設問の10進数「155」を2進数に基数変換してみましょう。
![ITパスポート2進数への変換](https://medium-company.com/wp-content/uploads/2025/02/c7fb889a242bfe2b400a08b1af7cbf9b.png)
手順①~③をおこなった結果、10進数「155」は、2進数に基数変換すると「10011011」です。
![](https://medium-company.com/wp-content/uploads/2019/06/081807-300x294.png)
「ア」が正解です。