2進数と進数変換

プログラミング

2進数とは

中学生、高校生がプログラミングを始めるにあたって、知っておくべき情報の基礎知識はいろいろありますが、ここでは、2進数と進数変換について説明します。

コンピューターの内部では電圧が高い状態と低い状態を2進数の1と0に対応させて情報処理したほうが簡単です。そのため、0と1の2つの数字を使って数を表現します。これを2進数といいます。

例えば10進数と2進数は以下のように対応します。
10進数 0, 1, 2, 3, 4, 5, 6, 7, 8
2進数 0, 1, 10, 11, 100, 101, 110, 111, 1000

進数変換 2進数を10進数に変換する

例えば10進数の999は

999 = 9×10^2 + 9×10^1 + 9×10^0 参考 10^0 = 1

同様にして例えば2進数の111は以下のように10進数に変換できます。

111 = 1×2^2 + 1×2^1 + 1×2^0 (10進数) 参考 2^0 = 1
= 4 + 2 + 1 (10進数)
= 7 (10進数)

ちなみに0乗が1になるのは次のように説明できます。
一般に
2^m×2^n=2^(m+n)
が成り立ちます。
n=0とすると
2^m×2^0=2^m
となりますから
2^0は1ということになります。

進数変換 10進数を2進数に変換する

10進数を2で割り、商が1になるまで割り続ける。最後の商と得られた余りを下から上に並べることにより2進数に変換できます。
例えば10進数の11は以下のようにして2進数の1011であることがわかります。