2012年6月22日金曜日

二進法って便利 麻布中学の問題からの発展1

この麻布中学の問題、111111111111のように1や0しか使わない数は二進法で出てくる数字です。ここで出てくる111111111111は十進法の数として出ていますが、テーマを変えて1と0しか使わない数字、つまり、2進法について考えてみましょう。
2進法は小学5年生の後期で学習しますが、どんなものだったのか、まずおさらい。
普段の生活で使う数字は10進法と呼ばれるもので、0~9までの数を使ってすべての数を表現する技法です。0,1,2,3,4,5,6,7,8,9,10,11・・・。10は1と0の数字を使って表していますよね。
その他に、1日は24進法(場合によっては12進法)、時間は60進法で数えたり、知らず知らずのうちにいろいろな数の数え方が生活にしみついています。
要は、何を束にするのかということです。5個を1つの束として考えていくのであれば5進法ですしね。2進法というのは2個を1つの束として数えていく方法で、2つ集まると1つと数えますから、使う数字は0と1のみになります。
例えば、1は2進法では1、2は2進法で表すと、束が1つできているので繰り上がって10となります。
同様にすると3は11、4は100となります。このとき、数字は百とか十一とか読まないようにしてくださいね。その読み方は10進法のものですから、イチゼロとかイチゼロゼロとか読みます。
ざっくり話せばこんな感じです。

二進法は、コンピューターの世界では必須の数え方です。所謂、「デジタル」と呼ばれるもので、現代には欠かせないものとなっています。
デジタルはコンピューターに「1と0の信号」で命令することです。
情報をやり取りする上でミスは致命的です。
コンピューターが数字を処理する場合、認識するという意味で、十進法で処理することはより高度であり、かつミスが起きやすい方法です。
例えば、2ケタまでの数を表示するためにランプを使って表現することを考えます。
これを十進法で表現するためには、十の位の0~9の数字を表現するための10個のランプと一の位の0~9の数字を表現するための10個のランプの合計20個のランプが必要になります。
これを二進法で表現するためには、上の図からも分かるように7個のランプで済んでしまいます。


上の図を見てわかるように、ランプ=命令と考えると、二進法の方がはるかに少ない命令でたくさんの数字を表せることがわかりますね。二進法を十進法に直す作業が面倒くさいじゃないかという話も出てきますが、それは人間目線であって、コンピューターは本来計算するのが得意ですから、命令を受け取ることに比べれば、計算することなんて容易いことなんです。



0 件のコメント:

コメントを投稿