デジタルデータの単位/データサイズ

ジタルデータが0と1の2進数で成り立っているのは十分に理解できたと思います。また、デジタルデータは細分化できるということも理解できました。

それを踏まえ、細分化できるということは「パケット通信料」という料金が発生していることからもわかるとおり、取り扱ったデータ量をあらわす「単位」というものが存在しなければなりません。

まず、デジタルデータの最小値は「0」もしくは「1」の数字1桁分のサイズになります。これは疑問の余地がありません。

このデジタルデータ1桁分の最小単位を、

ビット(bit)

といいます。

ただし、bit(ビット)単位では、サイズが小さすぎて扱いやすいものではありません。1ビットでは「0」か「1」の2通りのデータしか扱うことができないためです。

そこで、通常はいくつかのビット単位をまとめて、ある程度の数値まで表現できるようにパック化したビットの集合体を最小単位として利用します。

このようなビットの集合体の単位規格はいくつか存在しますが、最も一般的な単位は、

バイト(Byte)

と呼ばれる単位です。バイト(Byte)のビット数は、

8ビット(1バイト=8ビット)

になります。

つまり、8桁の2進数を1単位とするのが「バイト」です。この「バイト」はパソコンに関連する単位の中で、私たち一般のユーザーが最も多く接する単位となりますので、しっかり覚えておいてください。ビットは小文字の「b」や「bit」、バイトは大文字の「B」の表記がよく使われます。

では、なぜ8ビットなのかというと、

半角英数字1文字分のデータサイズ

になるからです。

コンピュータはアメリカ生まれなので、英語が基本となります。コンピュータに関することは英語が前提になっていますので、半角英数字(アルファベットと数字)を表現することのできる最低限のビット数を最小単位として定めています。

そのため、私たち日本人が扱う「日本語」は1バイトでは表現しきれません。この問題については、文字コードとは で学習します。

少し脱線しましたが、とにかく1バイト(8ビット)が実質の最小単位であることには変わりありません。ではなぜ、8ビットで半角英数字1文字分となるのでしょうか?

それは、8桁の2進数(8ビット)で何通りのビット列を表現できるかを考えると理解することができます。数学の知識が少し必要になりますが、それほど難解ではありません。

要は、1バイトで何通りの0と1の並び方を表現することができるのかということです。下表のとおり、8桁の2進数と10進数を対応させてみます。

2進数 10進数
00000000 0
00000001 1
00000010 2
00000011 3
00000100 4
00001000 8
00001010 10

2進数 10進数
00010000 16
00010100 20
00100000 32
01000000 64
10000000 128
11111110 254
11111111 255

このように、8桁の2進数(1バイト)では、0から255までの256通りを表現することができます。(28=256)

256通りを表現することができれば、半角英数字はすべて表現することができます。なぜなら、アルファベットはAからZまで26文字で、小文字を加えても52文字しかありません。数字を10種類加えてもおつりがくるからです。

さらに、&・<>などの記号を加えたとしても256文字なら十分に足りるので、1バイトあれば英語圏の人々にとって必要な文字や記号をすべて表現することができるというわけです。

もっとも、日本語や中国語などの漢字を扱う人々にとっては、256種類ではすべての文字を表現することはできません。

日本人が使う「常用漢字」だけでも軽く千を超えるからです。コンピュータをはじめとするIT技術はアメリカ生まれアメリカ育ちなので、他の国のましてアジア人のことなど想定していなかったのでしょう。

したがって、英語圏の人たちにとっては、1バイトですべての常用文字を表現することができるのに対し、日本などの漢字を扱う国では、1文字を表現するのに、2バイト(16ビット) を使います。2バイトを使うと、216=65,536 種類の文字を表現することができます。

では、これらを踏まえて「バイト」単位についてもう少し詳しく学習して行きましょう。

お金である「円」が、1円、1千円、1万円と位が上がっていくように、バイトの単位も、バイト → メガバイト → ギガバイト → テラバイトと位が上がって行きます。

下表のとおり、1,000倍で位が上がって行きます。

単位 データサイズ 正確なデータ量(Byte)
1B(バイト) 1B 1
1KB(キロバイト) 1,000B 210=1,024
1MB(メガバイト) 1,000KB 220=1,048,576
1GB(ギガバイト) 1,000MB 230=1,073,741,824
1TB(テラバイト) 1,000GB 240=1,099,511,627,776

このように、キロが1,000倍、メガが100万倍、ギガが10億倍、テラが1兆倍と慣用的に10の累乗で増えていきますが、実際は、2の累乗となるため正確には異なります。そのため、テラまでの位になるとかなりの誤差があります。

どちらの意味で用いるかは状況や用途によって異なりますが、基本的には、わかりやすい10の累乗を用いますので、1,000倍で位が上がっていくと覚えておいてよいと思います。

メガバイト(MB)やギガバイト(GB)の表示はよく目にする機会もあると思いますが、以下の表に例をあげてみます。データサイズの知識があれば、これらの製品についても理解が深まるのではないでしょうか?

製品名 データサイズ
フロッピーディスク(FD 1.44MB
CD-R 650MB・700MB
DVD-R 片面 4.7GB/両面 9.4GB
ブルーレイディスク 片面1層式 25GB/2層式 50GB

※これらの製品については、補助記憶装置(2) で学習します。

ブルーレイディスクなどの大容量の記録媒体は、一昔前のパソコン本体のハードディスクという記憶装置よりも多い容量を持っています。技術の進歩が恐ろしく早いので、新製品もどんどん出ています。

このデータの単位については、パソコンを扱ううえで必ず必要になる知識です。しっかり覚えておきましょう。

更新履歴

2008年7月25日
ページを公開。
2009年3月6日
ページをXHTML1.0とCSS2.1で、Web標準化。レイアウト変更。
2018年1月19日
ページをSSL化によりHTTPSに対応。
2022年1月9日
内容誤りを修正。

参考文献・ウェブサイト

当ページの作成にあたり、以下の文献およびウェブサイトを参考にさせていただきました。

ビットとバイト
http://www2.ttcn.ne.jp/~muratay/pckiso/bitbyte.html