見出し画像

小学5年生が理解する「誤り訂正符号」(デジタル社会を支えるテクノロジー:誤り訂正符号って何?その2)

息子が私の仕事のことを聞いてきた翌日の夜。

息子:「ねえねえ。昨日の話の続きは?」

私:「えっ!?何の話の続き?」

息子:「パパの仕事の話の続きだよ。」

私:(えっ!?飽きなかったの?)「あー、あの話の続きね。興味あるの?」

息子:「難しそうだと思ったけど。魔法でもなければ、小学生の高学年でもわかるぐらい難しくないって言うからさー。なんか気になってさー。」

私:「へー、珍しいね。じゃあ、まずは昨日は詳しく説明しなかったデジタルについて話をしようか。」

息子:「うん。昨日は、音の大きさをデジタルにして0と1だけで表すと、どこかの0と1が間違ってしまった時、全然違う音の大きさになって素敵な曲が台無しになってしまう。だからそれを直す必要があって、それで誤り訂正符号ってのを使うと直してくれる、っていうことは分かったけど、音の大きさをデジタルにしたとき、なんでああいう0と1の並びになるかわからなかった。」

私:「おおっ!おおまかな話しかしなかったから分からなくて当然だね。では、少しだけ詳しくデジタルの話をしよう。昨日、例えば音の大きさをデジタルで表すと0が000、7が111となる、って話したよね。」

息子:「したねー。」

私:「あの音の大きさの表し方はいい加減な表し方ではなく、きちんと規則的に表した音の大きさの数字と、音の大きさのデジタルの表し方になってるんだよ。」

息子:「そうにゃの?」

私:「そう。10進数って言葉を知ってるかな?というより、タクムが普段使ってる数の表し方が10進数というんだ。」(手元にある紙にペンで「10進数」と書いた。)

息子:「10で進む数。」

私:「そう。数を0から数えていって10になると何か変わるよね。数(かず)って言っても、日本を代表するサッカー選手じゃないぞ!!」

息子:「それは横浜FCのカズだろうっ!!古っ!!」

私:「53歳でも現役Jリーガーだぞ!!古くない!!俺もそういう研究者を目指すんだ!!」

息子:「全然、違うしっ!!で?10になると何が変わるかって?」

私:「そう。な~にっかなっ!?」

息子:「う~ん・・・。桁が上がって2桁になる。」

私:「そう!大正解!!」

息子:「大(だい)は余計っ!大って呼んでください。ウ〇チじゃありません、じゃねーんだこの野郎!!」

私:「誰に向かって、この野郎って言ってんだー!タクムのくせにー!!」

息子:「うるせー。で?」

私:「そう10になると桁が上がる、つまり10で1桁繰りあがる、つまり1桁進むから10進数なんだ。10進数の時は出てくる数が0から9になることを覚えておいてね。って、これが普通の数の表し方だね。これに対してデジタルでは10進数ではなく2進数という数の表し方を使うんだ。」

息子:「2進数?2進数になると、どうなるの?」

私:「うん。さっき10進数では出てくる数が0から9で、10で1桁繰り上がるって言ってたよね。じゃあどうなれば2進数になるかな?考えてみて?」

息子:「えーっ!教えてっ!」

私:「何でもいきなり人に教えてもらうと楽だけど自分の頭で考えなくなるから良くないぞ。そんなことばかりしてたら、大人になった時に人工知能、AIに仕事取られるぞ。ほらっ!今やってるテレビの音楽番組観てみろー、この女性歌手、人間みたいだけど『AI』って出てるだろ。人工知能だぞ!」

息子:「・・・何言ってんだよ!人工知能のAIじゃなくて『アイ』っていう本物の人間の歌手だよ!!」

私:「えっ!?そうなの!?てっきり人工知能で人間の映像作ってんのかと思ったよー。何年か前に人工知能使って作った美空ひばりさんに新曲歌わせるってテレビ番組でやってたしさー。」

息子:「違うよっ!これは本物!」

私:「へーっ・・・。まーいいや。人工知能(AI)は最新のデジタル技術だからまたその話題は別の機会に話そう。で、どうすれば2進数になるかな?」

息子:「う~んっ難しいね~っ!!」

私:「だから誰の真似だっ!!」

息子:「・・・分かった。出てくる数が0から1、で0と1か・・・そして2で1桁繰る上がる、1桁進む数?あれっ!?でも2になったら1桁進める必要ないじゃん。」

私:「よく考えたね。そこまで考えたらまーいいかな。出てくる数が0と1だけって言ったよね?そう考えるとどうなるか考えてみて。」

息子:「うーん、そうかっ!!2の時に10になるのか!!」

私:「大正解っ!!」

息子:「ダイって呼ん・・・」

私:「もうええわっ!!」

息子:「いつも使っている数は0から9で、10になると桁が1つ増えるけど、2進数では数が0と1だけで次は2だけど2っていう数字は使えないから10になるんだね。」

私:「そうっ!!そうやって考えると3進数、4進数、5進数と自由に使う数を決めて新しい算数や、中学以上で習う数学の表し方ができるんだ。もっとも普通の研究者や技術者が実際に使うのは2進数、10進数、そして16進数ぐらいかな。誤り訂正符号では、素数や素数のべき乗数の個数の数、というより表し方を使って、計算したりする。だから、難しく思われて敬遠されがちなんだけどね。そのあたりの話もまた別の機会にしよう。」

息子:「ふーん。」

私:「ようやく準備できたから、音の大きさをデジタルで表すと0が000、7が111となる、って話しに戻ろう。ここまでくれば、わかるかな。」

息子:「うーん・・・0が000なのは何で?」

私:「ごめんごめん。これは最大で3桁までの数字が数えられますよ、っていいうことを、はっきり教えているんだ。0から順番に考えてみて。」

息子:「うーん・・・普通の数字の0は000で、1は001、2は010?で合ってる?」

私:「オーケーッ!!次はどうなるかな?」

息子:「うーん・・・3は011?」

私:「いいねーっ!」

息子:「4は100、5は・・・101、6は110、7は111で8は1000?あれっ!?」

私:「そうだね。8は4桁になってしまうから最大の数を超えてるね。今回は最大で3桁までの数字が数えられるって約束だから0から7まで数えられるってことだから8は数えられないってなるんだ。大体のデジタル機器はこういう風に数えられる最大の大きさが決まってるんだ。これを専門用語ではダイナミックレンジとかいうんだけど、正確には信号、つまり数の最大値と最小値の比のことをいう。」

息子:「で?誤り訂正符号は?」

私:「うーん。今日はデジタルの基本がわかって準備ができたので、今日はここまで!続きは明日にしよう。」

この記事が気に入ったらサポートをしてみませんか?