時々奥さんと子供の幼少期に何を教育するのが良いかなと話をします。
私自身、ずっとITに関わることを生業にしてきたので、ITに関することは私から直接子供たちに教えてあげたいなと思っています。
先日100均でオセロを買って、2進数から教えていこうかなと少しずつ準備を始めていた矢先、
奥さんから「2進数ってどこで使えるの?」「知ってどうするの?」と質問が・・・
確かに普段なじみのない人からしたら、それってどう使うのってなるよねと思ったので、
今回はその時に私がとっさに何て回答したのかを残しておきます。
同じような疑問を持った人が、「へぇ〜、そういう見方もあるんだ」と感じてもらえたら嬉しいなと思います。
自然現象は0と1に置き換えられる
よく例えで使われるのは、電気がついているかついていないか。
電気がついている(流れている)状態を1
電気がついていない(流れていない)状態を0
OnとOffという概念がそれぞれ1と0になります。
もう少し、わかりやすいイメージの例えをすると
犬が好きである状態を1
犬が嫌いな状態を0
としてもOKでしょう。
このように、自然界のあらゆる現象は0と1に置き換えられるわけですね。
(自然界の不連続なアナログ情報をデジタルに変換することをA/D変換と言ったりしますが飛躍するので割愛)
あとは0と1の組み合わせ次第
例えば、Aさん1人で考えるなら、シンプルに犬が好きなら1、嫌いなら0というパターンしかないので、1桁あれば説明できます。
では、AさんとBさんのパターン(組み合わせ)で考えたらどうでしょう?
Aさんが起こり得るのは、犬が好きの1と犬が嫌いの0。
Bさんが起こり得るのは、犬が好きの1と犬が嫌いの0。
つまり、組み合わせとしては、
AさんもBさんも犬が好き・・・・・・・・11
Aさんは犬が好きでBさんは犬が嫌い・・・10
Aさんは犬が嫌いでBさんは犬が好き・・・01
AさんもBさんも犬が嫌い・・・・・・・・00
の4パターンになります。
同じように、Cさんも含めた組み合わせとなると
AさんもBさんもCさんも犬が好き・・・・・・・・111
Aさんだけが犬が好き・・・・・・・・・・・・・100
Bさんだけが犬が好き・・・・・・・・・・・・・010
Cさんだけが犬が好き・・・・・・・・・・・・・001
AさんとBさんだけが犬が好き・・・・・・・・・110
AさんとCさんだけが犬が好き・・・・・・・・・101
BさんとCさんだけが犬が好き・・・・・・・・・011
AさんもBさんもCさんも犬が嫌い・・・・・・・000
の8パターンになります。
(あとはずっとこれの繰り返し)
基本は0か1しかないのに、組み合わせ次第で色んなパターンを表現できるようになります。
シンプルが複雑を作る
コンピュータの世界では、最小が1ビットです。
扱う桁数が増えるほど、表現できる組み合わせも増えます。
1ビットでは2パターン(0、1)
2ビットでは4パターン(00、01、10、11)
3ビットでは8パターン(000、001、010、011、100、101、110、111)
4ビットでは16パターン(0000、0001、0010、0011、0100、0101、0110、0111、1000、1001、1010、1011、1100、1101、1110、1111)
5ビットでは32パターン(省略)
6 ビットでは64パターン(省略)
7 ビットでは128パターン(省略)
8ビット(1バイト)では256パターン
となります。
何度も言いますが、
どれだけビットが増えたとしても、基本は0か1のどちらかというシンプルな仕組みなのです。
2進数(0と1)の概念を理解することで、物事を論理的に考え、シンプルに考えられるようになることと、
複雑はシンプルから生まれているということがわかるので、結んでいく力も養われていくのではないでしょうか。
全てをシンプルに観る目を養おう
こんな説明で、奥さんは納得したのかわかりませんが。笑
複雑なものを生み出す根本にはシンプルが隠れています。
このシンプルなイメージが持てた時、物事を観察する観方というのは変わっていくのかなと思います。
ITの基礎理論を知ってどうなるのかと苦手意識を持つ人も少なくないのかなと思いますが、
へぇー意外にITって実用的で面白そうって思ってもらえれば幸いですね。笑
コンピュータだけではなく、私たちの現実社会は複雑に見えてシンプルです。
究極のシンプルがわかった時に、目に見える現実の観方は全く違ったものになってくるでしょう。