10進(SI)と2進(IEC)単位の対照表
この表は、規格化された2つの接頭辞体系における各単位の正確なバイト値を示しています。SI の10進接頭辞は BIPM の SI 文書で、2進接頭辞は IEC/ISO 80000-13 で定義されています。
| 単位 | 体系 | 正確なバイト数 |
|---|---|---|
| 1 KB(キロバイト) | 10進(SI) | 1,000 |
| 1 KiB(キビバイト) | 2進(IEC) | 1,024 |
| 1 MB(メガバイト) | 10進(SI) | 1,000,000 |
| 1 MiB(メビバイト) | 2進(IEC) | 1,048,576 |
| 1 GB(ギガバイト) | 10進(SI) | 1,000,000,000 |
| 1 GiB(ギビバイト) | 2進(IEC) | 1,073,741,824 |
| 1 TB(テラバイト) | 10進(SI) | 1,000,000,000,000 |
| 1 TiB(テビバイト) | 2進(IEC) | 1,099,511,627,776 |
- サイズの報告方法は OS によって異なります。2進単位を使うもの(歴史的に10進の記号を付けて表示)もあれば、本来の10進単位を使うものもあるため、同じファイルでもシステムごとに違う数値が表示されます。
- ストレージ機器は10進単位で販売されますが、RAM の容量は本質的に2進です(「16 GB」のメモリモジュールは実際には 16 GiB です)。
- フォーマット後の実使用可能容量は、単位の慣例の違いとは別に、ファイルシステムの管理領域によってさらにわずかに減ります。
10進単位と2進単位とは何か
ファイルサイズはバイト単位で数え、大きなサイズは接頭辞を付けて表します。ここには2つの接頭辞体系が併存しています。10進系は 1,000 のべき乗で SI 接頭辞を使い、1 KB = 1,000 バイト、1 MB = 10⁶ バイト、1 GB = 10⁹ バイト、1 TB = 10¹² バイトです。2進系は 1,024 のべき乗で IEC 接頭辞を使い、1 KiB = 1,024 バイト、1 MiB = 1,048,576 バイト、1 GiB = 1,073,741,824 バイト、1 TiB = 1,099,511,627,776 バイトとなります。
キビ(Ki)・メビ(Mi)・ギビ(Gi)・テビ(Ti)という2進接頭辞は、国際電気標準会議(IEC)によって規格化されました(当初は IEC 60027-2、現在は ISO/IEC 80000-13 に引き継がれています)。その理由はまさに、たとえば「ギガバイト」という同じ語が 10⁹ バイトにも 2³⁰ バイトにも使われていたからです。規格上、GB は必ず 10⁹ バイト、GiB は必ず 2³⁰ バイトを意味します。
その実務上の帰結が、有名な「消えた」ドライブ容量です。ストレージメーカーは容量を10進単位で表示するため、1 TB のドライブには 10¹² バイトが入ります。サイズを2進単位で報告する OS は、このバイト数を 1,024³ で割って約 931 GiB と表示します。歴史的にはこれが「GB」というラベルで示されてきたため、広告値より小さく見えてしまうのです。実際には容量が失われているわけではなく、同じバイト数を異なる単位で表しているだけです。
このファイルサイズ計算ツールの使い方
- 変換したいサイズの値を入力します。
- その単位を選びます — 10進(KB・MB・GB・TB)または2進(KiB・MiB・GiB・TiB)。
- 正確なバイト数を確認します。これは両体系に共通する、曖昧さのない基準値です。
- 10進(MB/GB)と2進(MiB/GiB)の換算結果を見比べ、同じデータが各慣例でどう報告されるかを確認します。
ファイルサイズ変換の計算式
どの変換も必ずバイトを経由します。入力値にその単位のバイト換算係数を掛けてバイト数を求め、次に変換先の単位の係数で割ります。10進単位の係数は 1,000ⁿ、2進単位の係数は 1,024ⁿ です。
計算例:1 TB = 10¹² バイト。これを 1,024³(= 1,073,741,824)で割ると 931.32 GiB、1,024⁴ で割ると 0.9095 TiB になります。逆に 1 GiB = 1,073,741,824 バイト = 1.0737 GB です。10進単位と2進単位の差は接頭辞が1段上がるごとに広がり、キロで約 2.4%、メガで 4.9%、ギガで 7.4%、テラで 10.0% になります。
よくある間違い
- OS に約 931 GB と表示されるからといって「1 TB」のドライブが不良品だと考えること — ドライブには 10¹² バイトが入っており、OS は2進の GiB で報告しています。
- 1 GB を 1,024 MB として扱うこと — SI 規格では 1 GB = 1,000 MB であり、1,024 MiB は 1 GiB です。
- 計算の途中で接頭辞体系を混ぜること(例:GB に 1,024 を掛けて MB を求める)。約 5〜10% の誤差が積み重なります。
- バイト(B)とビット(b)の混同 — ファイルサイズはバイト、ネットワーク速度はビットで表され、両者は 8 倍違います。
よくある質問
1 TB のドライブが 931 GB としか表示されないのはなぜですか?
そのドライブには、10進 SI 単位で表示されているとおり本当に 1 TB = 10¹² バイトが入っています。2進単位で報告する OS はこれを 1,024³ で割るため 931.32 GiB となり、歴史的にこの数値が「GB」というラベルで表示されてきました。どちらの数字も同じ容量を指しており、違うのは単位の慣例だけです。
GB と GiB の違いは何ですか?
ギガバイト(GB)は SI の10進慣例で 10⁹ = 1,000,000,000 バイトです。ギビバイト(GiB)は IEC の2進慣例で 2³⁰ = 1,073,741,824 バイトです。GiB は GB より約 7.4% 大きくなります。2進接頭辞(KiB・MiB・GiB・TiB)は、1つの語が2つの異なる大きさを指す曖昧さを解消するために規格化されました。
1 MB は 1,000 KB ですか、それとも 1,024 KB ですか?
SI 規格では 1 MB = 1,000 KB = 1,000,000 バイトです。1,024 KiB に相当するのは IEC の2進系での 1 MiB(メビバイト)= 1,048,576 バイトです。歴史的には「メガバイト」がどちらの意味でも大まかに使われており、その曖昧さこそが2進接頭辞の作られた理由です。
1 テラバイトは何バイトですか?
1 テラバイト(TB)は SI の10進接頭辞で 10¹² = 1,000,000,000,000 バイトです。1 テビバイト(TiB)は 2⁴⁰ = 1,099,511,627,776 バイトで、約 10% 大きくなります。ストレージメーカーはドライブ容量に10進のテラバイトを使っています。
RAM の容量に2進単位が使われるのはなぜですか?
メモリチップは 2 のべき乗でアドレス指定されるため、容量は自然に2進になります。16 GB として販売されるモジュールは、実際には 16 GiB = 17,179,869,184 バイトを備えています。一方ストレージドライブは10進単位で販売されており、これがドライブと RAM の容量が別々のルールに従うように見える理由の1つです。
参考文献
- ISO/IEC 80000-13:2008. Quantities and units — Part 13: Information science and technology (binary prefixes kibi, mebi, gibi, tebi).
- IEC 60027-2. Letter symbols to be used in electrical technology — Part 2: Telecommunications and electronics (original binary-prefix standard, 1998 amendment).
- Bureau International des Poids et Mesures (BIPM). The International System of Units (SI Brochure), 9th edition, 2019 — SI decimal prefixes.
- NIST. Prefixes for binary multiples. physics.nist.gov reference on IEC binary prefixes.