新・闘わないプログラマ No.392

キロ


単位につける接頭語にキロ(kilo)があります。キロメートル、キログラムといったものの「キロ」ですね。平凡社の「世界大百科事典」には、

ある量を表すときの単位につける接頭語で,103倍の意味。記号には k を用いる。国際単位系(SI)で SI 接頭語の一つとして採用されている。例えば,距離30 000mは30km,電圧15 000V(ボルト)は15kV(キロボルト)というようによく使われる。

とあります。などと誰でも知っていそうなことをえらそーにここで書いても仕方ないわけですが、世間一般には「キロ(kilo)」は103、つまり1000倍を意味し、小文字の“k”の記号で表します。しかし、これがコンピュータの世界になると、103 ≒ 210 なのをいいことに、この接頭語を210の意味で使うことがしばしばあるわけです。などと言うと、

「いや、それは違う。103は小文字の“k”を使い、読みは『キロ』だけど、210は大文字の“K”を使い、『ケー』と読むことによって厳格に分けているんだよ。これってすごく優れたやりかたなんだ。わかる?」

とか突っ込みを入れる人が必ず出てきます。いや、それは知ってますって。でも、そういう人に限って、「14.4Kbps」(読みは「じゅうよんてんよんけーびーぴーえす」)とか言ったりするんですよね。あの、それって14400bpsのことだから、103の意味で、「14.4kbps」(じゅうよんてんよんきろびーぴーえす)と言わないと誤りじゃないんでしょうか。
そもそも、「大文字のK(ケー) = 210 = 1024 を表す」というのの発祥はどこなんでしょうか。いろいろ調べてみたところ、「ASCII24 - アスキー デジタル用語辞典 - K」にこんな記述を見かけました。

なおIEEEでは、1000を意味する場合には小文字の「k」を、1024を意味するときには大文字の「K」を表記するようにしており、出版物などでもこの表記法にならったものが多い。

いずれにしても、そうやって「k(キロ)」と「K(ケー)」を厳格に分けて表現したところで、106と220はどうやって区別するんでしょ? 「4KB」を「よんけーばいと」と読む人はそこそそこいるようですが、「4MB」を「よんえむばいと」と読む人や、「4GB」を「よんじーばいと」と読む人に出会ったことはいまのところありません。そもそも“k”と“K”のように大文字・小文字に書き分けができませんし。
結局のところ、「キロ」と「ケー」にだけこだわったところであまり意味が無いよなあ、と私は大昔から思っていて、以前から気にせずに「キロバイト」とか言っています。

さて、コンピュータの世界で使われる単位で「キロ(ケー)」「メガ」「ギガ」といった接頭語が10nの意味なのか、それとも2nなのか、普段あまり気にすることは無いのではないでしょうか。そもそもこの小さな差が重要になるような場面はそれほど多くはないと思います。と言ってしまうと今回の話はここで終わってしまいますので、ここはあえて、現実にコンピュータの世界で使われている単位について10nなのか2nなのか考えてみました。

というわけで、記憶容量を表す場合は、ハードディスクの容量を除いて、2nである、ということのようですね。
で、問題なのが「ハードディスクの容量を除いて」という部分です。このことによる差が一番問題になるのは、初心者から、

「80GBのハードディスクを買って取り付けたのに、なぜか70数GBくらいの容量しか見えない、これってもしかして不良品?」

とか質問を受けた場合です。コンピュータの世界ではほぼすべての場面でバイトに対する接頭語は2nなのに、ハードディスクの容量表記だけはなぜか10nにすることによって見かけ上のディスク容量を多くすることができる、というノーベル賞ものの大発明(嘘)の手法を採用しているから、こうなってしまうわけです。
まあ、この質問に対する一番安直な回答は「まあ、世の中そんなもんだよ。ほら、土産物を買って帰って、家で開けてみると上げ底になってたりするでしょ? あれと一緒」でしょうか。だって、ちゃんと説明するのは面倒なんだもん。


2005.7.5 補足
IECが定めた2進接頭辞についての話は無いのか、というメールを何通かいただきました。すみません、すっかり忘れていました。取り上げるのを忘れていたんじゃなくて、そもそも、その存在自体を忘れていました(ダメダメです)。
本来、k, M, G等は10nを表すものですから、これらはそのままにして、それとは別に2nを表す接頭語を作ってしまおう、というものです。

Ki (キビ) → 210
Mi (メビ) → 220
Gi (ギビ) → 230

といったものがそうです。詳しくは、Wikipediaなどをご覧下さい。

[前へ] [次へ]

[Home] [戻る]


mailto:lepton@amy.hi-ho.ne.jp