2019/07/10
コンピュータを使う際に目にすることが多い数字や、bit・byte等の単位の話。
コンピュータは2進数が得意
bit(ビット)とは情報量の基本単位で、binary digitから由来している。binaryは二進法、digitは桁を意味するので2進数の1桁ということになる。つまり数字の0と1のこと。
1byte(バイト)はbitを8桁並べたもので、2の8乗=256通りのデータを表す。語源は英語のbite(日本語で一口)から由来しており、bitと混同しないようにbyteというスペルにした。
8bitをひとまとめにする理由として、8は2の3乗なので2進数3桁で表現でき、16進数を使えば2桁で表現できるので便利というのが理由のようだ。ちなみに半角文字は1byte、全角文字は2〜6byteで、コード上は16進数で表現されている。
byteはデータの容量を意味し、HDDやメモリ等の容量の単位「B」として使われる。B(バイト)の1,000倍がKB(キロバイト)、KBの1,000倍がMB(メガバイト)となる。
人間には10進数がわかりやすいので10の3乗=1,000でKBとなるが、コンピュータには2進数の方が扱いやすいため2の10乗=1,024となって、KBとは別にKiB(キビバイト)等の単位が1998年から使われるようになったのだが、実際の利用度はあまり高くないようだ。
単位 | 10進数 | 単位 | 2進数 | ||
---|---|---|---|---|---|
KB(キロバイト) | 103 | 1,000 | KiB(キビバイト) | 210 | 1,024 |
MB(メガバイト) | 106 | 1,000,000 | MiB(メビバイト) | 220 | 1,048,576 |
GB(ギガバイト) | 109 | 1,000,000,000 | GiB(ギビバイト) | 230 | 1,073,741,824 |
TB(テラバイト) | 1012 | 1,000,000,000,000 | TiB(テビバイト) | 240 | 1,099,511,627,776 |
PB(ペタバイト) | 1015 | 1,000,000,000,000,000 | PiB(ペビバイト) | 250 | 1,125,899,906,842,624 |
SDカードやHDD等の容量で256GBや512GB、1024GB(1TB)などという数字をよくみかけると思うが、それぞれ2の8乗=256、2の9乗=512、2の10乗=1,024ということで、コンピュータにとって扱いやすい数字となっているということがわかるだろう。
フルカラーは24bit
コンピュータ上で色を表現するには光の三原色である赤(Red)、緑(Green)、青(Blue)を組み合わせて表示している。それぞれの色の色調は256段階(8bit)あり、それら3つをかけ合わせて色が表現されるので、256x256x256=16,777,216色(24bit)となる。ホームページを作ったことがある人は色の指定で16進数が使われているのを意識したことがあるのではないだろうか。
画像ファイルの形式には色々な形式があるが、一般的にGIF(Graphics Interchange Formatの略|ジフ)、JPEG(Joint Photographic Experts Groupの略|ジェイペグ)、PNG(Portable Network Graphicsの略|ピーエヌジー、ピング)などがよく使われている。
それぞれ扱える色の数が異なり、GIFは最大8bit(256)の色、JPEGは最大24bit(約1677万)の色、PNGは24bit(約1677万)の色と8bit(256段階)の透明度を扱うことができる。
Windowsで32bit版と64bit版の違いは?
Windowsでは同じバージョンのOSでも32bit版のOSと64bit版のOSがあり、どちらにすれば良いのか悩んだ人もいるのではないだろうか。
32bit版は2の32乗=4,294,967,296のアドレス空間が存在するが、1アドレスに1byteを割り当てるので、メモリを4GBまでしか認識することができない。それに対して64bit版は2の64乗=18,446,744,073,709,551,616のアドレス空間が使えるので、その制限を気にする必要はない。
また、64bit版であれば32bit版のソフトウェアも利用できるのだが、逆は利用することができない。業務で利用している特殊なソフトウェアが32bit版のものである場合、64bit版のOSでは動作しない可能性があるので注意が必要だが、そういう特殊な状況だったり、旧型でスペックの低いパソコンを使うのでない限り、通常は64bit版にしておけば問題ないだろう。