1bitや8bit、32bitなどビットという表記が情報系ではよく出てきます。ビットの意味や計算方法などは基本であるためきちんと理解しておく必要があります。
1バイトや1ビット、2進数なども一緒に理解しておきましょう
1ビットが意味するものとは?
1ビットの「ビット」は英語で「Binary digit」から作られた造語で日本語でBinaryバイナリは「二進数」Digitディジットは「桁」を意味します。
つまり「ビット」とは「二進数の1桁」のことです。
二進数とは?
二進数は「0と1」であらわされる数字です。日常的に使っているのは10進数です。
二進数では0と1しか使いません。0→1の次は一桁繰り上がって10です。次は11です。次は繰り上がって100です。
1ビットは二進数一桁です。2ビットは二進数2桁です。3ビットは二進数3桁です。
当然ですが、桁数が上がれば表現できる数の個数は増えます。言い換えればビット数が上がれば表現できる数の個数は増えます。
10進数であれば
- 一桁であらわされる数は「0,1,2,3,4,5,6,7,8,9」の10個
- 二桁であれば「01,11,12,13,14,15,16,17,18,19, ~ 99」の100個です。
10進数ではn桁増えるごとに表現できる数は10n増えます。
二進数ではどうなるでしょうか?
二進数の一桁をビットといいます。
- 1ビット(二進数1桁)では「0, 1」の2個です。
- 2ビット(二進数2桁)では「0, 1, 10, 11」の4個です。
- 3ビット(二進数3桁)では「0, 1, 10, 11, 100, 101,110,111」の8個です。
つまりnビット(二進数n桁)増えるごとに表現できる数は2n個増えます。
8ビットは「8桁の二進数」であり、表現できる数の個数は「256」
32ビットは「32桁の二進数」であり、表現できる数の個数は「232 = 4,294,967,296」表現できます。
1バイトは8ビット
容量を表す単位に「byte:バイト」があります。
1バイトは8ビットを表します。
8ビットは2進数8桁を表すので、「28=256個」の数を表現できます。
1Kbyte(キロバイト)はK = 103を表すので1×103バイト=1キロバイトです。
1Gbyte(ギガバイト)はG = 109を表すので1×109バイト = 1ギガバイトです。
8ビットはよく使われる
ところで8ビット(256個:0 ~ 255)はよく使われる数字でいろんなところで目にします。
1バイトも8ビットです。
ドラクエシリーズの能力値の上限も0~255となっているのは8ビットを上限としているからです。
サブネットマスクも255.255.255.0のように8ビットが使われています。
RGBカラーも0-255の8ビットをよく使います。
8ビット以外にもかつては様々な長さのデータ単位が使われていたようですが、ちょうどよい長さの8bitが使いやすくて残ったのかもしれません。
7ビットは128個多くを表現するのには短すぎ、9ビットは512で少し長すぎるので間の8ビットなんですかね?人気のあったコンピューターに8ビットが採用されていたことが原因ともいわれていますね。