Bit(ビット)とByte(バイト)とは?

ITブログ

Bit(ビット)とByte(バイト)は、コンピューターの世界で使われる情報量の単位です。

ここでは、Bit(ビット)とは何か、Byte(バイト)とは何かを簡単に解説します。

Bit(ビット)とは?

Bitとはコンピューターで扱う情報の最小単位です。

1Bitは2進数の一桁分に相当し、1Bitで0か1のどちらかを扱う事ができます。

1Bitだと0か1しか扱えませんが、2Bitだと0,1,2,3を、3Bitだと0,1,2,3,4,5,6,7をと、Bitが増えれば扱える数も大きくなります。

Bit数によって扱うことの出来る数は、以下のようになります。

Bit数 表現できる数 表現できる数値の範囲
プラスのみ (符号なし:unsigned) マイナス~プラス (符号あり:signed)
1 Bit 2 0 ~ 1 -(1Bitではマイナス表現不可)
2 Bit 4 0 ~ 3 -2 ~ 1
3 Bit 8 0 ~ 7 -4 ~ 3
4 Bit 16 0 ~ 15 -8 ~ 7
5 Bit 32 0 ~ 31 -16 ~ 15
6 Bit 64 0 ~ 63 -32 ~ 31
7 Bit 128 0 ~ 127 -64 ~ 63
8 Bit 256 0 ~ 255 -128 ~ 127
9 Bit 512 0 ~ 511 -256 ~ 255
10 Bit 1024 0 ~ 1,023 -512 ~ 511
16 Bit 65,536 0 ~ 65,535 32,768 ~ 32,767
32 Bit 4,294,967,296 0 ~ 4,294,967,295 -2,147,483,648 ~ 2,147,483,647
64 Bit 18,446,744,073,709,551,616 0 ~ 18,446,744,073,709,551,615 -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807

1Bit増える毎に扱える数が2倍に増えるという規則性があります。

Bitが増えるごとに扱える数が倍々になっていき、64Bitまでいくと1844京6744兆0737億0955万1616もの数を扱うことが出来ます。

Byte(バイト)とは?

Byteとは情報量を表す単位で、8Bit=1Byteです。

BitとByteの関係

更にByteは1000倍(または1024倍)毎に単位が変わります。

バイト(Byte)、キロバイト(KB)、メガバイト(MB)、ギガバイト(GB)という具合です。

バイトの単位一覧

スマホの通信量なんかで聞く「ギガ」は、ギガバイトの事ですね。

ややこしいのは、コンピューター関係では単位が変わるのが1000倍ではなく1024倍になる(ことが多い)事です。

国際単位系(SI)という、国際的に定められ世界中で広く使われている単位系では1000倍で単位が上がるのですが、コンピューターの世界では昔から慣例的に1024倍で繰り上がる単位系が使われています。これは、コンピューターの基準が2進数ということからきており、2の10乗(=1024)で単位が繰り上がる単位系になっています。
ただし、コンピューターの世界でも国際単位系(1000バイトで1キロバイトとする)を採用するシーンもあり、ややこしさに拍車をかけてます。

結局、キロバイトはバイトの1000倍なの?1024倍なの?

バイトの単位が1000倍単位なのか、1024倍単位なのかについては、上で述べた通り国際単位系(SI)かコンピューターの慣例値かで変わりますが、混乱を避けるため、1998年にIEC(国際電気標準会議)というところで、両者を明確にする記法が定められました。

上が国際単位系(SI)の記法、下が2進数を基準とした1024倍単位を明示する記法です。

SI接頭辞:国際単位系(SI)の記法
単位 英語表記(省略形) 説明 バイト数
バイト Byte(B) 8Bit 1
キロバイト Kilo Byte(KB) Byte×1000 1,000
メガバイト Mega Byte(MB) KB×1000 1,000,000
ギガバイト Giga Byte(GB) MB×1000 1,000,000,000
テラバイト Tera Byte(TB) GB×1000 1,000,000,000,000
ペタバイト Peta Byte(PB) TB×1000 1,000,000,000,000,000
エクサバイト Exa Byte(EB) PB×1000 1,000,000,000,000,000,000
ゼタバイト Zetta Byte(ZB) EB×1000 1,000,000,000,000,000,000,000
ヨタバイト Yotta Byte(YB) YB×1000 1,000,000,000,000,000,000,000,000
2進接頭辞:IECが定めた、2進数を基準とした1024倍を明示する記法
単位 英語表記(省略形) 説明 バイト数
バイト Byte(B) 8Bit 1
キビバイト Kibi Byte(KiB) Byte×1024 1,024
メビバイト Mebi Byte(MiB) KiB×1024 1,048,576
ギビバイト Gibi Byte(GiB) MiB×1024 1,073,741,824
テビバイト Tebi Byte(TiB) GiB×1024 1,099,511,627,776
ペビバイト Pebi Byte(PiB) TiB×1024 1,125,899,906,842,624
エクスビバイト Exbi Byte(EiB) PiB×1024 1,152,921,504,606,846,976
ゼビバイト Zebi Byte(ZiB) EiB×1024 1,180,591,620,717,411,303,424
ヨビバイト Yobi Byte(YiB) YiB×1024 1,208,925,819,614,629,174,706,176

この取り決めに則れば、1キロバイト=1000バイト、1キビバイト=1024バイト、となりすっきりしますね。

ただし、このSI接頭辞・2進接頭辞、両者の使い分けはあまり浸透していません。

慣例はなかなか解消されず、現在でもコンピューターの世界では1キロバイト=1024バイトとする表現が使われています。むしろ多数派です。

ですので、キビバイト(KiB)・メビバイト(MiB)の表現がされていれば、1024倍(2の10乗)の単位であると明確にわかるのですが、コンピューター関係でキロバイト(KB)、メガバイト(MB)の表現が使われるときは、1000倍(10の3乗)か1024倍(2の10乗)かは、1024倍が多数派ではあるものの、結局のところ不明瞭だというのが現状です。

コメント

タイトルとURLをコピーしました