2進数ってなに?
コンピュータは2進数で考えている
コンピュータにはその内部にスイッチのようなものがあり、これをオンにしたりオフにしたりしています。
コンピュータはこのスイッチをオンにしたりオフにしたりすることで数を数えます。
コンピュータはスイッチがオンの状態を1、オフの状態を0として考えています。
ヒトとコンピュータは考える方法が違います。
理解しにくいのは当然なので、まだめげないでください。
ヒトは指が10本だから10進数で考える
「指折り数える」なんて言葉がありますが、ヒトは古来より指を使って数を数えていたのです。
国や文化によって違うとはいいますが、手を開いた状態で指を1本曲げたら1と数えたり、手をグーにして指を1本伸ばしたら1と数えたりしますよね。
両手の指を全部使ったら10になって一区切りします。
一区切りしたら桁が一つ増えます。
それが10進数です。
もしも、ヒトの指が30本なら30進数を使っていたかもしれませんね。
でも、実はヒトは10本の指で1000以上の数を数えることができるんです。
で、2進数ってなんなのか
やっと本題です。
2進数はITパスポート試験にも出てくる、いわばITの必須科目といえるようなものです。
2進数は0と1で数字を表現します。
0から数えていき、1になったら次の位に繰り上がります。
「何を言っているんだ」って感じでしょうか。
下表は0から10までの10進数と2進数の対応です。
10進数 | 2進数 |
---|---|
0 | 0 |
1 | 1 |
2 | 10 |
3 | 11 |
4 | 100 |
5 | 101 |
6 | 110 |
7 | 111 |
8 | 1000 |
9 | 1001 |
10 | 1010 |
10進数では9になると次の位に繰り上がりますよね。
2進数では1になると次の位に繰り上がるのです。
2進数の一つのけたをビットといいます。
上の表を見ると3ビットだと7まで表現できるということがわかると思います。
4ビットだと15まで、5ビットだと31まで表現できます。
ヒトは片手で31まで、両手で1023まで数えられる
2進数を知らなかった頃のあなたは「そんなアホな・・・」と思ったでしょう。
でも、今のあなたになら理解できるはずです。
伸ばした指を1、曲げた指を0と読むことで2進数で表現ができます。
5本の指があれば5ビット、10本の指があれば10ビットの数字が数えられるのです。(指がキツイですが…)
10進数 | 2進数 | ゆび |
---|---|---|
0 | 00000 | |
7 | 00111 | |
18 | 10010 | |
29 | 11101 |
ほかにもある○○進数
一般的にはn進数と言ったりします。
2進数や10進数のほかにも、いろいろあります。
n進数 | |
---|---|
10進数 | 0から9までの10個の数字で数を表す |
2進数 | 0と1の2つの数字で数を表す |
8進数 | 0から7までの8個の数字で数を表す |
16進数 | 0から9、AからFまでの16個の数字で数を表す |
24進数 | 0から23までの24個の数字で数を表す |
60進数 | 0から59までの60個の数字で数を表す |
2進数、8進数、16進数はコンピュータでよく使用されます。
(8進数はほぼ使われませんが)
24進数と60進数は時間の表現に使われますよね。
なんで2進数はわかりにくいのか
2進数がわかりにくいと思う理由は単純に馴染みがないから、これにつきると思います。
日本人は比較的英語が苦手だと思うのですが、それはなぜでしょう。
英語のネイティブスピーカーではないからです。
子供のころから日本語に慣れ親しみ、日本語でものを考えるようにできてしまっているので他の言語を学ぶのに苦労するのです。
逆に子供のころから英語に慣れ親しんでいればすんなり身につくといいますよね。
そういった理由から幼児教育で英語に力を入れたりするのです。
数字に関しても同じことが言えます。
ヒトは10進数ネイティブなんです。
2進数に苦労するのも当然でしょう。