2進接頭辞ってなに? SI接頭辞との混在で生じるズレを解説

 

コンピューターの世界で使われる「bit(ビット)」や「Byte(バイト)」という単位。

「光回線の速度1Gbps」「スマホのメモリー容量128GB」「録画用ハードディスクの容量4TB」などと、量や大きさを簡潔に表現するために、G(ギガ)や T(テラ)などのSI接頭辞」を付けてよく用いられています。

量や大きさを表すときに、人間は10という区切りの良い数字で区切られていた方が理解しやすいです。

しかし、コンピューターは、オン (1) か オフ (0) の世界。0と1という数値しか扱わないので、2進数の世界で表した方が都合が良いのです。

コンピューターの世界用に作られた「2進接頭辞」というものがあるのを知っていますか?

作られてから何年も経つのに、使われているのをあまり見かけません。

そんな「2進接頭辞」をご紹介します。

 

2進接頭辞の一覧

2n 接頭辞 記号 十進数表記
210 キビ (kibi) Ki 1,024
220 メビ (mebi) Mi 1,048,576
230 ギビ (gibi) Gi 1,073,741,824
240 テビ (tebi) Ti 1,099,511,627,776
250 ペビ (pebi) Pi 1,125,899,906,842,624
260 エクスビ (exbi) Ei 1,152,921,504,606,846,976
270 ゼビ (zebi) Zi 1,180,591,620,717,411,303,424
280 ヨビ (yobi) Yi 1,208,925,819,614,629,174,706,176

2進接頭辞は、SI接頭辞の後ろに「i」を付け足して、「~ビ」と発音するものが付け加えられただけなので、分かりやすいですね。

「1MiB」(イチメビバイト)と表記されていれば、「1,048,576B」であるという意味になります。

残念ながら、現在のところ一般的な表記として普及していないようです。

「2進接頭辞」と「SI接頭辞」 誤差が生じる例

2進接頭辞があまり浸透していないためか、SI接頭辞とごちゃ混ぜで使われていたりします。

例えば、Windows 10 のディスクのプロパティー画面のこちら。

2進接頭辞ではなく、SI接頭辞が使われている例

 

1TB の容量として売られているSSDですが、PCに接続すると 930GB(ギガバイト)になっています。

本来は、930GiB(ギビバイト)と表示するべきなのですが..。

ズレの原因を解説

930GBという表記で、SI接頭辞が付いているので、10進数で考えて変換すると、

930GB = 930×109B = 930,000,000,000バイト

になります。

 

ところが、998,833,020,928バイト、と表示されていて、ほぼ1TBです。

どういうこと?? という状態になりますよね!

 

2進数であることを示す2進接頭辞を付けて、930GiBと表記されていれば、

930GiB = 930×230B =930×1,073,741,824B =998,579,896,320B

となり、数字はほぼ合っていますよね。

 

930GB は、930GiB という意味で書かれているということです。

数字が大きくなるほど、大きな違いが生ずる

接頭辞の違いによる誤差は、数字が小さいうちは、

  • 1KB = 1,000B
  • 1KiB = 1,024B

と、24の違いなので、2.4%の誤差ですが、数字が大きくなると、

  • 1TB = 1,000,000,000,000B
  • 1TiB = 1,099,511,627,776B

99,511,627,776 もの大きな誤差(約10%)が生じてしまいます。

 

今後は、ペタバイト以上の時代に向かって行きます。

ペタの時代になると、

  • 1PB = 1,000,000,000,000,000B
  • 1PiB = 1,125,899,906,842,624B

なので、125,899,906,842,624 もの大きな誤差(約12.6%)になります。

そろそろ2進接頭辞を使って、正しい表記にしてもらいたいものですね!

 

関連記事