2のn乗を考える

カテゴリ: コンピュータ / 公開日: 2007年10月13日(土曜)04:24 / 投稿者: Tom Goodsun
コンピュータの世界では「2」に関連した数字(倍数とか)がよく出てきます。ご存知のように、コンピュータが単純な電気信号の違い(高電圧・低電圧とか電源のON・OFFとか言われます)しか理解できないところに由来します。それを数字で解釈するのが2進法(0と1の組み合わせの数字)あるいは2進数(binary digit number)といいます。 2のn乗(べき乗とも)は、小学生で習う算数の乗算(掛け算)のひとつです。これを紐解いていくと不思議なことが起こります。あまり気にされないところだと思うので、ちょっと考えてみました。

まず多くの人は、たとえば「2の3乗」は「2を3回掛け算したもの」というでしょう。考え方は2という数字が式の中に3回出現してくるという解釈です。普通の人ならおそらくこうやって理解していると思いますし、文系の私もこういう理解しかもっていませんでした。この解釈で行くと、2の4乗やもっと大きい2の64乗でも通用します。
<%image(blog/071013001.gif|400|100|画像)%>

しかし考えてみてください。これは「n>2」の場合しか通用しないと思いませんか? 2のn乗、3のn乗、4のn乗・・・・・・
上の考えで行くと、nは2以上という前提でしか通用しないように思われます。

だって「2の0乗」や「2の1乗」の答えは何になるの? ってなことになります。ほらおかしなことになったでしょ? 2の0乗・・・「2を0回掛け算する」・・・2(×?)=? ということは掛け算しないから答えは2? でも2の1乗の答えは2ですよね? じゃあ、2の0乗=2の1乗? ってなことになります。
結論から言うと「xの0乗」の答えは1「xの1乗」の答えはnです。
ではなぜそうなるのかを考えていきましょう。

まず2という数字を考えます。
人間は普段、人間にわかりやすい10進法(0~9)を用いて数値を理解します。2だろうと、3だろうと、100だろうと、すべての数字は0を中心に出発していると思われます。しかし、0はとても特殊な数字です。乗算や除算(割り算)では答えは0になります。0の論理的な解釈は「何もない」です。
だから0以外の数字を表現するときは、数字の基本的な増分値である1を足す・引くしたものから考えるといいでしょう。
正数(プラス)で考えていくと、すべての数字は「0+1」つまり「1」から出発していると考えます。

ここで初めて、べき乗の意味を持ってきます。つまり「xをn回掛け算したもの」です。ここで注意してほしいのは日本語にだまされてはいけないこと。ここでは「xがn回出現する」ではなく、「xを計算対象とする演算子(×)がn回出現する」ということです。先ほども言ったとおり、すべての数字は0+1から出発していると考えるので、xのn乗は正数の場合、あらゆる数字にあれはめることができます。
<%image(blog/071013002.gif|450|250|)%>

考え方は間違っていないと思いますが、つまりこれがべき乗を考える上で重要だと思います。
たとえば、こんな練習問題はどうでしょう。

整数nを入力し、2のn乗(2をn回掛け算)するプログラムを作りなさい。

とかね。暇があったらどうぞ。