なぜコンピューターは2進法で、人間はそうでないのか

http://d.hatena.ne.jp/rikunora/20081228/p1


割とこの手のエントリーはよくチェックしているので、早くブックマークしたけど、その後、見るたびに(おおげさでなく)指数関数的にブックマーク数が増えていて、最後には
はてなのトップに載っていて、びっくりした。この手の出世エントリー(?)ははじめて見たので。


ここまでが本題。ここからはどうでもいい話。

ブックマークのコメントに、脊髄反射的に「eが一番効率がよいのに3より2が効率がよいのは意外」なんて書いちゃったけど、これ、間違ってるね。
N進法でMを表すのに必要なランプの数は、(N-1)*logNM=(logM)*(N-1)/logNだから、(N-1)/logNが最小となるNを求めればよい。微分して、1/logN-(N-1)/N(logN)2=(NlogN-N+1)/(logN)2。NlogN-N+1の部分を取り出して微分すると、logNだから、N>1で単調増加。かつ正だから、結局極値はなくて、Nが1に近づけば近づくほど効率がよいことになる。したがって、2以上の整数の進法なら、2進法が一番効率がよいことになる。
ちゃんと読んでないことがバレバレだね。


結局、ランプのたとえは不適当だということではないだろうか。例えば卓球などのスコアのように、ある数までを表すのに何枚の札を必要とするか、とすれば、eが最適ということになる。その場合、999までを表すのに、2進法なら20枚、3進法なら21枚必要になる。しかし、600までなら、2進法で20枚、3進法で18枚となるので、最初に感じた疑問も解消される。