-
-
スピーカー 1
二進法はもう数学なんで、ここから数学の話に戻っていきます。
スピーカー 2
AIの話ばっかりしてたけど、ここで一回パソコンの原点みたいなところに戻るっていうところですね。
スピーカー 1
そう。もうAIの原点でもあると思う。
スピーカー 2
AIの原点でもあるか。そっか。
スピーカー 1
で、それが17世紀くらいまで遡れるんですよ。
スピーカー 2
17世紀。結構前ですね。
スピーカー 1
結構前。ニュートンの時代まで遡れる。
スピーカー 2
17世紀がイコール二進法?
そう、二進法を体系化する人が現れるんですよね。
よく思いつくよな、二進法。そもそも。
スピーカー 1
まあそうね。その発想とかもね、結構哲学っぽいところの話も入ってくるんだよね。
スピーカー 2
そうなんだ。哲学。
0か1かってあるかないかみたいな。
スピーカー 1
そういう哲学っぽい話とかも出てくるんですけど、今回はちょっと二進法の話をして、そもそもどういうもんだっけっていうところとか。
なんでコンピューターって二進法を使っているのかとか、そういう話が今回。
で、次回それを作った人の話をしようかなと思ってます。
スピーカー 2
はい、お願いします。
スピーカー 1
じゃあ最初に、僕らが使っている十進法ってありますけど、十進法って何ですか?
スピーカー 2
十進法は0から9までの10種類の数字を使って、1桁を表す数の表し方。
スピーカー 1
そうですね。で、9から10になったら桁が上がって、2桁になると。
まあそれが十進法なんですけど、これって僕らの指が10本あって、数えるときにもすごいちょうどいい数だし、大昔から10っていう数って数えやすいから重要だったと思う。
スピーカー 2
もし私たちの指がさ、4本4本だったらさ、8進法になってたんかな?
スピーカー 1
なってた可能性あんじゃん。
スピーカー 2
やっぱり十進法って指が10本だから。
スピーカー 1
とは言われてるんじゃないかな。
スピーカー 2
まあそうっぽいよね。
スピーカー 1
まあそうだよね。
で、それに対して2進法ってやつは、2になったらもう桁が上がるっていうのが2進法ですね。
だから数字は0と1。で、2になるときは1、0ってなる。で、3は1、1になって。で、4になるとまた桁が1個増えて1、0、0っていう感じで続いていくのが2進法ですね。
じゃあ最初にコンピューターの話をしたいんですけど、コンピューターを10進法で作ることってできないの?って思わないですか。
スピーカー 2
できそう。
スピーカー 1
要は0から9の数字を使って、こう表して、で、このパソコンからさ、例えば文字情報とかにするときはさ、その数字に対応する表があって、
で、例えば0001がアルファベットのAを表しますよとか、まあそういう対応表があって、僕らABCとかパソコンで見れてるわけなんですけど。
スピーカー 2
うん。それは今の話だよね。今のパソコンの話。
スピーカー 1
そう、今の話。そう。でも別にそれが01とかだけじゃなくて、0から9までの数字で表してもできそうじゃん。
スピーカー 2
できそう。うん。
スピーカー 1
なんでじゃあそうじゃないんですかっていう話なんですよね。
スピーカー 2
うん。
スピーカー 1
って考えたことあります?
スピーカー 2
いや、ないですね。
スピーカー 1
なんか当たり前のように01がコンピューターだよねってなってるんだけど、実はコンピューターって昔10進法のやつもあったんだよね。
スピーカー 2
そうなんだ。
スピーカー 1
で、1940年代のコンピューターとかって、0から9までの数字を入力するタイプのコンピューター、ENIACってやつがあったんだけど。
スピーカー 2
その方が私たち的には直感的にわかりやすいよね。
そうそうそう。この数字見たらこういうもんかなって推測しやすいしね。
スピーカー 1
だって0と1だけ見てもね、なんかよくわかんないじゃん。
スピーカー 2
そうだね。
スピーカー 1
これじゃあなんで01になったのかというと、必要になるパソコンの回路っていうのがすごい重要で、
例えば0から9までの数字をコンピューター上で表したいとするじゃん。
で、そのコンピューター上で表したいってことは、コンピューターって電気流れるじゃんまず。
その電気が流れる種類をどう割り振るかっていうので表現することができる。
例えば電気が流れなかったら0ですっていう状態。
1ボルト流れたら1っていう表示。2ボルト流れたら2っていう表示みたいな。
そういう分け方ができるとするじゃん。
例えばね。したら流さないっていう状態から1ボルトから9ボルトまでのそういう電圧をかけるっていう装置があれば、0から9の状態を表現することができる。
だから10種類の状態を作るって感じ。
スピーカー 2
そうだね。
スピーカー 1
で、二振法の場合って同じように0から9までの数字を表そうって思うと、二振法って0か1かなんで電気を流すか流さないかっていうまずシンプルな状態が、
そのシンプルな状態だけで表すんですけど、じゃあ0は流さないで1は電気を流す。
で、じゃあ2を表現しようとした時に今度はその電気を流すっていう回路をもう一個増やして桁を。
ってやればこれ電気流すっていう装置的には2つあれば4種類の状態を表現できてるわけよね。
2×2で。って考えるとこの回路装置を4つ並べて4桁分用意してあげれば、2×2×2×2で16個の状態っていうのを表せるわけじゃん。
スピーカー 2
16の数までを表現しようと思ったら4つの回路でオッケー?
スピーカー 1
そうだね。あ、ま、15までか正確には。
スピーカー 2
あ、15までか。そうだね。
スピーカー 1
0から15。
スピーカー 2
16になっちゃったら1、0、0、0、0になっちゃうから。5桁になっちゃうから。
スピーカー 1
あ、そう。5桁になっちゃうから。ま、もう一個増やせばいい。
でも正直それでも今必要な機械って5つなわけよ。
だけど受信法だと0から9まででさっきの1ボルト2ボルトみたいな電圧の書き方を変えますっていうのだとそれぞれの種類の機械が必要になる。
だから0から9まででもう10個必要で、で、11、12ってやるんだったらさらにそのセットがまた必要になるって考えると効率の良さが違うの分かりますかね。
スピーカー 2
そうですね。
スピーカー 1
10個の機械で0から9まで表示するのと4つの機械だけで0から15まで数えれるって考える、受信法だとね。
スピーカー 1
まあそうじゃない。
スピーカー 2
拡大したら違うものになっちゃうっていうのは。まあまあでも普通に認識する範囲であれば、画面上とかであれば表現できないものはないですね。
スピーカー 1
そうだね。まあなんか厳密に言ったら味とか匂いとか遅れないよなとかありそうだけど。
分かんない。01って言えんのか分かんないけど。
スピーカー 2
それもなんか数値化できれば二進法にはなりますからね。
うん。そこまで考えてなかった。あのパソコンの画面上のことを考えたけど、確かに味とかは、味覚、嗅覚はまた、それ何の機械使うんだって話だけどね。
スピーカー 2
まあね。
またパソコン以外のものになっちゃいそうだから、それも大変だけど、そういう味覚とか嗅覚をなんか刺激できるような機械がいつかできたら、それを01で表現することはもしかしたらできるかもね。
スピーカー 1
ああまあでもあれは科学構造も01でいけるからいけるか。いけるわ多分。
科学構造式も基本01表記にできるというか、記述の文字に起こすこともできるんで便全感とかね。
スピーカー 2
そうなんだ。
スピーカー 1
そういう表記法がある。だから遅れないことないっすね。
素晴らしい。
あと面白い話が、二進法を使う人、普通使わないんだけど、プログラマーの人とかって二進法をちょっと覚えてたりするところあるらしくて。
両手を使って数字を数えていくときに、二進法しかわからない人だと、せいぜい片手で10数えて、もう片方の手で指折って10ずつ数えても、100が限界じゃないですか。たぶん数えていけるのって。
スピーカー 2
両手で二進法で数えようとしたときに100が限界。
スピーカー 1
そう、頑張っても。まあ普通に折る折らないだけだったらもう10まで数えたら指全部消費しちゃうわけですけど。
スピーカー 2
そうだね。
スピーカー 1
でも、二進数で指を折って数えていくっていうのもあって、指1本ずつが一桁、折るか折らないかっていう01にして表現することで、1023まで指を折って数えれるっていう。
スピーカー 2
そうだね。
スピーカー 1
そう、結構すごくてさ。中指立てると4になるらしいです。
スピーカー 2
ああ、そうなんだ。
スピーカー 1
親指立てたら1みたいな。まあ面白いなと思って。
で、ここまで言ったら最初のこの1000本のワインの中から1本だけ毒が入ったワインを見つけるっていうのができるっていうのに繋がるんですけど。
スピーカー 2
この繋がりがまだよくわかんないな。二進法、十進法の違いはわかった。
スピーカー 1
まあこれすごいシンプルで、1000本の中から1本見つけるってことは、まずこの1000本のワインを1本ずつ個別に識別しないといけない。
スピーカー 2
うんうんうんうん。
スピーカー 1
だから番号をつけていくと。
スピーカー 2
うん。
スピーカー 1
で、十進法で言ったらまあ普通にこう1から1000まで番号をつけられるわけですけど。
スピーカー 2
うん。
スピーカー 1
ここで01の二進法を使ってあげると、1000ってさっき10桁あれば1024までいけるって言ったんだけど。
スピーカー 2
うん。
スピーカー 1
だから10桁の二進数があれば1000本のワインに1個ずつ個別の番号をつけられるわけよね。
スピーカー 2
うんうんうん。
スピーカー 1
そこまでオッケー?
スピーカー 2
そうですね。01、10、11、100みたいな感じでつけていくと、最終的に1000本のワインだったら9桁まで?10桁?
スピーカー 1
9桁までだと2の9乗なんで1000に足りない。
10桁あれば数としては1023まで数えられる。0から1023。2の10乗で。
スピーカー 2
うん。
スピーカー 1
だからまあ1000本ワインがあっても10桁の二進数っていうのがポンって1個ずつ別々につけれると。でまずつけるじゃないですか。
スピーカー 2
2の10乗が1024。
スピーカー 1
そう1024。
スピーカー 2
2の10乗になったら11桁なっちゃう?1024だったら11桁になっちゃうから10桁で数えられるのはえっと1023まで?
スピーカー 1
そう0から1023までかな。で人を10人連れてきてその人が1の桁から10の桁まで担当してもらうと。その10人に。
でその1000本のワインを自分の桁が1の時に飲むっていうのをやる。
例えば1番のワインはAさんだけ飲んで他の人は飲まない。
で2番のワインはBさんが飲んでそれ以外の人は飲まない。
で3番はAさんとBさんは飲むけど他の人は飲まないみたいな感じでやっていくと、
その飲んだパターンっていうのがさ全部その10人がいれば全パターンできるわけじゃん。
まず。
スピーカー 2
AさんBさんっていうのは各桁を表してるっていうことですね。
スピーカー 1
そうそうそうそう。
で。
スピーカー 2
そうなると1000本のワインだから10人で表せるのか。
スピーカー 1
そうそうそう。
スピーカー 2
10人で1023まで表せるってことは1000本だと10人で表せる。
10桁でね。
はい。
スピーカー 1
で全パターン飲んで誰が死ぬかなっていうのを見守ると。
スピーカー 2
うん。
スピーカー 1
そしたら死んだ人が毒ワインを飲んでるんで1番っていう情報になるわけじゃん。
うん。
ってなったらこの最終的に10人分合わせると1個の2振数が完成するわけですよ。
スピーカー 2
うんうん。
じゃあ例えば3番のワインが死ぬワインだったとしたら11の時にAさんとBさんが2人死んじゃうって感じ?
スピーカー 1
そう。
スピーカー 2
うん。
スピーカー 1
そうっていうのもなんかあれなんだけど。
なるほどね。
でそれ以外の人が全員生きてれば11000だから3番のワインになって特定できるみたいな。
スピーカー 2
なるほど。
スピーカー 1
残酷人間コンピューターみたいな感じですよこれ。
スピーカー 2
残酷人間コンピューターですね。
スピーカー 1
そうそう。
っていうのができるんで1000本ワインがあっても10人いれば一応毒ワイン1本をちゃんと特定できますよっていう。
スピーカー 2
いやーでも複数人死んじゃうね。
うーん。
死んじゃう可能性がある。
だから1000とかそういうの以外はその1が何個かある場合の数だったら死んじゃう人が何人か出てくるわけよね。
スピーカー 1
そうだね。
あれかな。
全員生存するルートは1番最初のワインは000に全部0に設定しておいて誰も死なかったってことは1番勝手にできるよね。
スピーカー 2
まあそうだね。
スピーカー 1
それ以外ないっすね。
スピーカー 2
そうだね。
スピーカー 1
1000分の1の確率ですか。
スピーカー 2
最悪で9人死ぬ。
スピーカー 1
そうだね。
9人も死ぬね最悪。
まあでもこの後王様がそのワインを飲むとしてその毒味薬なんじゃないですかこの10人が。
スピーカー 2
なるほどね。
いやそれだったらもう1000人雇って1人殺した方がいいんじゃないって思うけどね。
スピーカー 1
確かにね。
あーその考え方だな。
だいぶ大寄りの。
人命をね。
スピーカー 2
人命を最優先したらやっぱ1000人雇った方がいいですね。
スピーカー 1
その発想はなかったね。だいぶ帝王学な感じだねそれ。
帝王学?
だいぶ王様視点じゃない?1000人用意すればいいじゃんみたいな。
スピーカー 2
いやいや部下のためだから部下していい。
スピーカー 1
いやでも1000人用意するのとワイン1個ずつに二神酢つけるのどっちが大変なのかっていうそこもあるかもしれないけど。
スピーカー 2
あれこれ今何番だっけってなりそう。
スピーカー 1
それはアホすぎるでしょ。
しかもあとこの10人の負担がえぐいっていうのもあるけどね。どんだけワイン飲まなきゃいけないんだっていう。
スピーカー 2
確かに。
スピーカー 1
まあいいや。とりあえずバッと聞いたら1000人必要だけど100分の1の人数でできちゃうってことはそれぐらい効率はいいってことですよね。二神酢を使うとね。
っていういい例かなと思って出してみました。
スピーカー 2
なるほど。結構難しいですね。
なかなか二神法で普段数を表すことがないから感覚的にパッと理解するのは難しくて結構頭を使いながら聞かなきゃいけなかったけどそういうことですかっていう感じでした最後。
スピーカー 1
効率いいっていうのが伝わったらいいかなっていう。
それが本当に今世の中にある全てのパソコンとかスマホとかもちろんAIとかの基礎ももう二神法なんで。
非常に偉大な発明ですね。これだから考えた人がいるんですよ。
スピーカー 2
考えた人すごいよね。
スピーカー 1
そう。0から9の10個の文字で表しているものを0と1だけで表現できるぞって言った人が最初にいるわけよ。
スピーカー 2
というかさ、時計とかだったらさ、12神法じゃん?とか1ダースは。
そうだね。
1ダースも12か。
スピーカー 1
1ダースも12だね。
時計は12と60だけど。
スピーカー 2
あ、そっか。12と60。
そういう感じで、10神法以外もあるっていうことは結構みんなすぐ気づきそうではあるけど、
それを01だけの二神法にするっていう発想が始めは難しそう。
スピーカー 1
そう。結構難しいと思う。
スピーカー 2
だからすごいですね。考えた人。
スピーカー 1
しかもこれが考え出されるのって、別にコンピューターの効率がどうこうとかそういうのよりもっと早い段階で、
全部の数字は0と1だけで合わせるっていう理論を作った人がいる。
スピーカー 2
それはコンピューターの前から考えられてそうな感じはするけど。