「オクテット」と「バイト」は何が違う?
(イラスト・アニメーション:岸本 ムサシ)

今回の回答者:
日本IBM システム製品事業 テクニカル・セールス
System z テクニカル・セールス 部長
山田 義昭

 ネットワークの世界では、8ビットの情報量を表す単位として「オクテット」という言葉を使うことがあります。256ビットは32オクテットです。また、オクテットは8ビットずつの区切りを示す意味でも使われます。例えば、32ビットあるIPアドレスの最初の8ビットを「第1オクテット」と呼んだりします。一方、コンピュータの世界では、8ビットを示す単位として「バイト」が使われます。では、オクテットとバイトは何が違うのでしょうか。

 実は、オクテットが必ず8ビットであるのに対し、バイトが何ビットを表すかは決まっていません。バイトとは、欧文の1文字を表す情報量だからです。今では1バイト=8ビットが一般的ですが、大型コンピュータが主流だった時代はコンピュータメーカーによって、1バイトが6ビットや7ビット、9ビットだったりしました。

 1バイト=8ビットが浸透したきっかけは、1964年に米IBMが発表したSystem/360というコンピュータです。英小文字のサポートや将来的な文字コードの拡張を考慮して、1バイトをそれまでの6ビット(表現できるのは64文字)から8ビット(同256文字)としました。このSystem/360が大きくシェアを伸ばし、1バイト=8ビットが事実上の標準になりました。

 しかしながら、1バイト=8ビットというのは今でも厳密に標準化されているわけではありません。そこで通信の世界では曖昧さを排除するために、オクテットが使用されることが多いようです。