GBとGiBって何が違うの?を解説!
ジャンル: Storage 記事作成日: 2024/11/26 記事更新日: 2024/11/27 タグ: 容量、バイト、ビバイト、単位、データこの記事では「GB」と「GiB」の違い、そして誤解を解くための解説を込みに説明していきます。
読み方
GBは「ギガバイト」と読み、GiBは「ギビバイト」と読みます。これについての詳しい説明を後半でどんどん解説していきます。
誤解を解く
Windowsなどで大きな容量のストレージを買ったとき、1TBのSSDなのに「931GBだった!」や、32GBのUSBメモリーがぴったりではなく「29GBしかない!」など、容量が少なかった経験はありませんか?
その理由は「2進接頭辞(GiB)」と「SI接頭語(GB)」を誤って表示しているからです。
Windowsでは実際の単位表示が**2進接頭辞(GiB)なのにもかかわらず、GB(SI接頭語)で表記しています。するとこのようなことが起こります。試しに計算します。
1GB × 1000 × 1000 × 1000 = 1,000,000,000B
1.000,000,000B ÷ 1024 ÷ 1024 ÷ 1024 = 0.931GiB
この計算からわかることは、「1GB = 0.931GiB」つまり**減少しています。**SI接頭語(GB)から2進接頭辞(GiB)に変換すると、値が小さくなってしまうのです。
大抵のストレージはSI接頭語(GB)で値が綺麗に揃うように作られていますが、Windowsはそのストレージを2進接頭辞(GiB)で解釈してしまうため、このような表記ずれが起こってしまいます。さらに、Windowsがその2進接頭辞(GiB)のことをSI接頭語(GB)であるという表記をしてしまうため、混乱を招いています。
多少容量が少なくても、製品に支障はありませんので、ご安心ください。
SI接頭語と2進接頭辞
ここからは詳しい解説を行っていきます。
容量の単位には、「SI接頭語」と「2進接頭辞」という概念があり、それぞれを使い分けて容量を表現しています。わかりやすく解説していきます。
先に要約すると、
- 1GB = SI接頭語
- 1GiB = 2進接頭辞
です。これを覚えておきましょう。
ここから先は専門用語が飛び交うので、飛ばしても構いません
SI接頭語とは
SI接頭語は「エスアイ せっとうご」と読みます。SI接頭語とは、国際的に定義された単位を表すものです。
よく使われるのはk(キロ)とm(メートル)を合わせてkm(キロメートル)と読む、これもSI接頭語の概念によって定まっている単位です。この場合、SI接頭語ではkを「接頭語記号(せっとうご きごう)」と言います。^2
そして、パソコンでよく使われる単位「GB(ギガバイト)」はG(ギガ)が接頭語記号です。K(キロ)、M(メガ)も同様です。そして、B(バイト)は情報量の単位のことを表します。^4
K(接頭語記号) + B(情報量単位) = KB(キロバイト)
SI接頭語で使われる単位の具体的な数字は以下です。
1KB(1 キロ バイト) = 1,000B(1000 バイト)
1MB(1 メガ バイト) = 1,000KB(1000 キロ バイト) = 1,000,000B(バイト)
1GB(1 キロ バイト) = 1,000MB(1000 メガ バイト) = 1,000,000,000B(バイト)
1TB(1 テラ バイト) = 1,000GB(1000 ギガ バイト) = 1,000,000,000,000B(バイト)
1PB(1 ペタ バイト) = 1,000TB(1000 テラ バイト) = 1,000,000,000,000,000B(バイト)
そして、以降の数字があまり触れることのない単位です。
1EB(1 エクサ バイト) = 1,000PB(1000 ペタ バイト) = 1,000,000,000,000,000,000B(バイト)
1ZB(1 ゼタ バイト) = 1,000EB(1000 エクサ バイト) = 1,000,000,000,000,000,000,000B(バイト)
1YB(1 ヨタ バイト) = 1,000ZB(1000 ゼタ バイト) = 1,000,000,000,000,000,000,000,000B(バイト)
1RB(1 ロナ バイト) = 1,000YB(1000 ヨタ バイト) = 1,000,000,000,000,000,000,000,000,000B(バイト)
1QB(1 クエタ バイト) = 1,000RB(1000 ロナ バイト) = 1,000,000,000,000,000,000,000,000,000,000B(バイト)
このように、1000倍毎に単位を変えているのがSI接頭語です。
2進接頭辞
2進接頭辞は「にしん せっとうじ」と読みます。SI接頭語と区別するために、SI接頭語の後に定義されたものです。特徴は「KB」ではなく「i」を含んだ「KiB(キビバイト)」という表現になることです。^3
SI接頭語との違いは、1000倍毎ではなく、1024倍毎です。なぜ1024という数字が表れるのかというと、コンピューターでは2の累乗の1つである「8」を基礎にした単位「B(バイト)」を使用するためです。このバイトの由来は、デジタルで利用される「2進数」によるものです。
2進接頭辞はSI接頭語と明確に区別するために作られたものですが、現在のコンピューター社会ではなじまない言葉として、混乱を招く単位です。ですが2進接頭辞は初期のコンピューターで当たり前のように利用された単位であるため、切っても切り離せない存在となっています。
2進接頭辞は「B(バイト)」には適用されませんが、「KB(キロバイト)」以降には適用できます。
K(接頭語記号) + i(2進接頭辞特有の記号) + B(情報量単位) = KiB(キビバイト)
2進接頭辞で使われる単位の具体的な数字は以下です。
1KiB(1 キビ バイト) = 1,024B(1024 バイト)
1MiB(1 メビ バイト) = 1,024KiB(1024 キビ バイト) = 1,048,576B(バイト)
1GiB(1 キビ バイト) = 1,024MiB(1024 メビ バイト) = 1,073,741,824B(バイト)
1TiB(1 テビ バイト) = 1,024GiB(1024 ギビ バイト) = 1,099,511,627,776B(バイト)
1PiB(1 ペビ バイト) = 1,024TiB(1024 テビ バイト) = 1,125,899,906,842,624B(バイト)
そして、以降の数字があまり触れることのない単位です。
1EiB(1 エクスビ バイト) = 1,024PiB(1024 ペビ バイト) = 1,152,921,504,606,846,976B(バイト)
1ZiB(1 ゼビ バイト) = 1,024EiB(1024 エクスビ バイト) = 1,180,591,620,717,411,303,424B(バイト)
1YiB(1 ヨビ バイト) = 1,024ZiB(1024 ゼビ バイト) = 1,208,925,819,614,629,174,706,176B(バイト)
1RiB(1 ロビ バイト) = 1,024YiB(1024 ヨビ バイト) = 1,237,940,039,285,380,274,899,124,224B(バイト)
1QiB(1 クエビ バイト) = 1,024RiB(1024 ロビ バイト) = 1,267,650,600,228,229,401,496,703,205,376B(バイト)
2進接頭辞はバイトの部分を見るとわかりますが、とても複雑な数字を表しています。この単位とSI接頭語を混ぜて使うと、容量の計算がかみ合わないなどの問題があり、注意が必要です。
計算方法
もしGiB(ギビバイト)という単位を見つけ、GB(ギガバイト)に変換したい場合、次のような計算をしましょう。
GBはBから1000で3回掛けたものです。そしてGiBはBから1024で3回掛けたものです。なので、GiBからBを算出する方法として、GiBに1024を3回掛けましょう。そして、BからGBに変えるときは、**3回割ります。**以下は例です。
1GiB × 1024 × 1024 × 1024 = 1,073,741,824B
1,073,741,824B ÷ 1000 ÷ 1000 ÷ 1000 = 1.07GB
1.07GBという結果になりました。1GiBは1.07GBと同じ、ということになります。
以下は計算表です。ご参考に。
1KB = 1B × 1000
1MB = 1B × 1000 × 1000
1GB = 1B × 1000 × 1000 × 1000
1TB = 1B × 1000 × 1000 × 1000 × 1000
1PB = 1B × 1000 × 1000 × 1000 × 1000 × 1000
1EB = 1B × 1000 × 1000 × 1000 × 1000 × 1000 × 1000
1ZB = 1B × 1000 × 1000 × 1000 × 1000 × 1000 × 1000 × 1000
1YB = 1B × 1000 × 1000 × 1000 × 1000 × 1000 × 1000 × 1000 × 1000
1RB = 1B × 1000 × 1000 × 1000 × 1000 × 1000 × 1000 × 1000 × 1000 × 1000
1QB = 1B × 1000 × 1000 × 1000 × 1000 × 1000 × 1000 × 1000 × 1000 × 1000 × 1000
1KiB = 1B × 1024
1MiB = 1B × 1024 × 1024
1GiB = 1B × 1024 × 1024 × 1024
1TiB = 1B × 1024 × 1024 × 1024 × 1024
1PiB = 1B × 1024 × 1024 × 1024 × 1024 × 1024
1EiB = 1B × 1024 × 1024 × 1024 × 1024 × 1024 × 1024
1ZiB = 1B × 1024 × 1024 × 1024 × 1024 × 1024 × 1024 × 1024
1YiB = 1B × 1024 × 1024 × 1024 × 1024 × 1024 × 1024 × 1024 × 1024
1RiB = 1B × 1024 × 1024 × 1024 × 1024 × 1024 × 1024 × 1024 × 1024 × 1024
1QiB = 1B × 1024 × 1024 × 1024 × 1024 × 1024 × 1024 × 1024 × 1024 × 1024 × 1024
単位からB(バイト)に変換したいときは、逆算で割っていく必要があります。そうして相互変換が可能です。
最後に
この記事ではGBとGiBの違いについて紹介しました。単位の誤解を解くことと、GBとGiBを正しく使えるようになることを願います。ですが個人的には、Windowsが配慮しないと難しいことだと思います。
この記事が気に入ったらこのサイトをブックマークしていただくか、miharu.blogをブックマークしていただき、ほかの記事もぜひご覧ください。