コンピュータは「2進数」で動作している
コンピュータはその物理的な特性から、内部的には2進数で動作しています。2進数と10進数が互換であることを知ることで、前述の離散値を2進数で伝達できることが理解できます。2進数における1桁の数字をビット(bit)と言います。ビット数が増えると、1ビットごとに表現できる値(種類)は2倍ずつ増えていきます。2bitでは4種類、3bitでは8種類、4bitでは16種類の情報を区別することができます。
現代のコンピュータでは、8bitをまとめて1byte(バイト)として扱います。かつては、1byteは1つの文字を表すために必要な情報量として定義され、コンピュータの種類よって1byteは5bitから10bitまでマチマチでした。
1バイトが定義されたのは15年前
アルファベットは26文字なので、大文字だけであれば5bit(32種類)あれば表現することができます。大文字小文字と数字を全部表現しようとすると62文字なので6bit(64種類)必要です。さらに記号まで表現しようとすると7bit(128種類)が必要です。この7bitで大文字小文字数字記号制御コードを表現する文字体系として規格化されたものがASCIIコードです。ASCIIはAmerican Standard Code for Information Interchange(情報交換用米国標準コード)の略で、1963年に策定されました。
その後、IBMからSystem360という大型汎用コンピュータ(メインフレーム)が1965年に発売されました。同機は1文字7bitのASCIIコードを採用しつつも1byte=8bitとし、余剰の1bitをパリティビット(エラーチェック用のビット)に利用しました。同機が爆発的にヒットした結果、多くのCPUはそれに倣うことになり、1byte=8bitがデファクトスタンダードとなりました。最終的に2008年に国際標準化組織であるISO/IECによって8bit=1byteと正式に定義されました。実は半世紀以上の間、1byteの定義が無かったのです。