二進数
コンピュータを扱うとき、「二進数」という言葉を耳にすることがよくあります。でも、なぜコンピュータは私たちが普段使っている十進数ではなく、二進数を使うのでしょうか? その理由はコンピュータの仕組みにあります。コンピュータはオンもしくはオフという2つの状態しか持たない電気信号によって動作します。この単純な仕組みに、0(オフ)と1(オン)のみで構成される二進数は非常に都合がよいのです。
二進数とは?
二進数とは、2進法を使って表された数のことです。このシステムでは0と1の2つの数字だけを使います。そして、二進数の各桁は「ビット(bit)」と呼ばれます。たとえば、二進数の
101
は3ビットで構成され、1001011
は7ビットで構成されています。 二進数の読み方
二進数を読むことは、0から9までの10個の数字を使う十進法(10進法)で数を読むのとは少し異なります。二進数では、右端のビットを として、左に行くほど2の累乗が大きくなっていきます。
例として、二進数
1011
を見てみましょう:- 右端のビットは を表します
- 左に一つ進んだビットは を表します
- さらに左のビットは を表します
- いちばん左のビットは を表します
1011
が十進数で何を意味するかを求めるには、次のように計算できます:1 · (2^3) = 8 左端のビット
0 · (2^2) = 0 次のビット
1 · (2^1) = 2 次のビット
1 · (2^0) = 1 右端のビット
これらを合計すると
8 + 0 + 2 + 1 = 11
となります。つまり、二進数の 1011
は十進数だと 11
になります。 二進数と日常で使う十進数の比較
普段、私たちがどのように数を数えているか考えてみましょう。0から始めて、1、2、3…と進み、9に到達します。では、さらにもう1つ増やしたいときにはどうなるでしょうか。ここで桁数が足りなくなります。そこで左隣に1を立て、右端の桁を0に戻して、結果的に「10」になります。
💡
本質的には、「この桁の数字が尽きたので左の桁に繰り上げよう」ということです。足し算で「桁上がり」するのと同じように、次の位置に「1」を繰り上げるイメージです。
二進数でも全く同じことが起こります。ただ、扱う桁が0と1の2つしかないので、9ではなく1の次の段階で桁が足りなくなるのです。ではどうするかといえば、やはり左隣に「1」を繰り上げ、いまの桁を0に戻します。二進数のカウントは0, 1, 10, 11, 100, 101 …というように進んでいきます。
数字を桁として表現すると、十進数でも二進数でもよく似た図が得られます:
このようにして、二進数(2進法の数)を十進数(10進法の数)に変換することができます。