整数の性質|n進法について

今回はn進法について学習しましょう。日常的に用いられているのは10進法です。ですから、2進法や5進法などで表された数の扱いには慣れていないので、意外と間違えやすい単元です。
そうは言っても、取扱いに慣れてしまえば、得点源にできる単元です。十分に演習をこなして準備しておきましょう。
n進法の単元で学習すること
この単元では、以下のような事柄を学習します。
n進法の単元で学習すること
- n進法について
- 記数法の変換
- n進法の小数
- n進数の四則計算
- n進数の各位の数と記数法の決定
- n進数の桁数
- 有限小数・無限小数、分数の小数表示と記数法
ここでは、記数法の変換までを紹介し、残りは次回以降に紹介します。
n進法について
n進法の基本事項
この単元で覚えておきたい用語とその定義です。
n進法の基本事項
- n進法…位取りの基礎をnとして数を表す方法のこと。
- n進数…n進法で表された数のこと。
- 底…位取りの基礎となる数nのこと。
- 底が満たす条件…2以上の整数。
- n進数の各位の数字が満たす条件…0以上n-1以下の整数。
特に、底や各位の数字が満たす条件は、数を決定するために用いられるので、きちんと覚えておきましょう。
また、n進数の表し方にはルールがあります。n進数では、底を明らかにするために、その数の右下に(n)と書くルールになっています。ただし、10進法では、普通(10)を省略します。
n進数の表し方
2 進数 ⋯ 100(2) , 234(2)
10 進数 ⋯ 100 , 234(底を省略して良い)
10進数以外では底を記述することになっているので、書き忘れないようにしましょう。ここまでがn進法の基本事項です。
位取り記数法
数を表すとき、通常、位取りの基礎を10とする10進法が用いられています。位取りとは、数の位(=けた)を定めることや、その定め方のことです。
たとえば、10進数で表された数12345では、基礎とした10を用いて位取りしています。底の10は基礎となる数なので、基数と言われることもあります。
10進数12345は10を用いて位取り
12345=1⋅104+2⋅103+3⋅102+4⋅101+5⋅100 1⋅104+2⋅103+3⋅102+4⋅101+5⋅100104 の位103 の位102 の位101 の位100 の位上の位から数字を抜き出して並べると 12345
10の累乗ごとに位が定められ、指数が大きくなるほど上の位となります。各位の数字は、上の位から順に、左から右へ並べられます。
また、各位の数字は0以上9以下の整数で、これは整数を10で割った余りの種類と同じです。
10進数で12345と書かれた整数について
12345 は各位の数字の配列を表しており、実際には
1⋅104+2⋅103+3⋅102+4⋅101+5⋅100を意味する。
これと同じようにして、n進数も表せます。一般にnを2以上の整数とするとき、0以上の整数は、すべて以下の形で表すことができます。
n進数はnを用いて位取り
ak⋅nk+ak−1⋅nk−1+⋯⋯+a2⋅n2+a1⋅n1+a0⋅n0( a0 , a1 , a2 , ⋯⋯ , ak−1 , ak は 0 以上 n−1 以下の整数、ak≠0 )
これを10進数と同じようにakak-1……a2a1a0 のような数字の配列で、n進数を表します。この方法を位取り記数法と言います。
n=10のときが10進法、n=2のときが2進法と呼ばれる表し方になります。
n進数のまとめ
n を 2 以上の整数とする。
n 進法で
ak ak−1 ⋯⋯ a2 a1 a0と書かれた k+1 桁の正の整数は
ak⋅nk+ak−1⋅nk−1+⋯⋯+a2⋅n2+a1⋅n1+a0⋅n0の意味である。
ただし
a0 , a1 , a2 , ⋯⋯ , ak−1 , akは 0 以上 n−1 以下の整数、ak≠0
以上のことから分かるのは、日常的に用いられている10進数は、あくまでも各位の数字の配列だということです。
数字の配列で四則計算ができるのかと疑問に思うでしょうが、繰り上げや繰り下げなどのルールがあるおかげで、問題なく四則計算できます。位取り記数法はすごい仕組みだと個人的には思います。
また、10進法の小数について、小数点以下の位は以下のように定められています。
10進数の小数:小数点以下の位
10 進数の小数について、小数点以下の位は以下のように定められている。
1101 の位 , 1102 の位 , 1103 の位 , ⋯⋯これと同じように、n進法の小数について、小数点以下の位は以下のように定められています。
n進数の小数:小数点以下の位
n 進数の小数について、小数点以下の位は以下のように定められている。
1n1 の位 , 1n2 の位 , 1n3 の位 , ⋯⋯なお、小数については「分数と小数」の単元で詳しく紹介します。
記数法の変換
最も基本的な問題として、記数法の変換を扱った問題が出題されます。10以外を底とする数に変換するには、底とした数を用いて位取りすれば良いです。
たとえば、23を2進数に変換してみましょう。底が2であるので、23を2で位取り、すなわち2の累乗を用いて表します。
10進数から2進数への変換
24=16 , 22=4 , 21=2 , 20=1より
23=1⋅24+0⋅23+1⋅22+1⋅21+1⋅20よって、23 を 2 進法で表すと
10111(2)23を2の累乗に分解して表します。すると各位の数字が分かります。各位の数字を並べたものが10進数から変換した2進数です。
しかし、このやり方だとかなり面倒な作業になります。この面倒な作業を少しでも簡単に行えるのが、次に紹介する方法です。この方法の手順を覚えてしまえば機械的に変換できます。
10進数をn進数で表す方法
- 商が0になるまでnで割る割り算を繰り返す。
- 出てきた余りを逆順に並べる。
素因数分解と同じように下に割り算していきます。割る数はずっと底のままです。
また、変換するには底で割った余りを用いるので、余りを書き残しておきます。先程の23をこの方法で2進数に変換してみます。

底の2で割ったときの商を下に、余りを商の横に書いていきます。商が0になったら終了です。
なお、教材によっては、余りが割る数よりも小さくなったら終了とする場合もあります。
この場合、最後の商を先頭にして余りを逆順に並べます。慣れてくると、こちらの方がやりやすいかもしれません。
この方法では、最後の商を忘れないようにしましょう。
次はn進法を扱った問題を実際に解いてみましょう。