誰が言い出したのか、まことしやかに流布される謎の解釈。
今回のIT都市伝説はこれだ!
1byteは8bit §
コンピュータが扱う情報の単位をbitと言います。
bit単位で扱うのは煩雑なので、通常はbitを8個集めたbyteという単位を使います。
実は、1byteが何ビットなのかは決まってなどいない §
実は、1byteが何ビットなのかは決まってなどいないのです。
手近にある(既にちょっと古い)JIS情報ハンドブックから適当に引いてきてみましょう。
JIS X 0202-1991より
5.1.2 バイト(byte) 一つの単位として扱うビット列のことであって、その長さは冗長検査技術やフレーミング技術の影響を受けない。
この定義のどこにも8bitとは書いてありません。
しかし、8bit以外で使うことなどあるのかと思う人もいると思うので、もう1つ同じハンドブックから引用します。
JIS X 0208-1990より
4.1 符号の単位 この規格で規定する符号の単位は、2バイトとする。各バイトは、JIS X 0201及びJIS X 0202による7単位又は8単位とする。
7単位とは7bit、8単位とは8bitに相当します。つまり、ここではバイトは7bitであったり8bitであったりする、と言っているわけです。
8bitを示す単位はoctet §
では、8bitを示す用語がないのかというと、そんなことはありません。
octetという用語がそれにあたります。1octetは8bitです。
現在、符号化文字集合の標準になりつつあるISO 10646/Unicode関係の資料を見ると、octetという用語は頻繁に出てきます。
パソコンに限って言えば通じることは通じるが、注意も必要 §
とはいえ、1byteは8bitという認識でこれまで何ら問題なかった、という人も多いと思います。基本的には、パソコンの世界では1byteは8bitとして扱うことがデファクトスタンダードになっていて、そういう理解で困ることは無いはずです。むしろ、用語に正確を期して、1バイトが7bitとして会話をしようとすると問題が起きるぐらいでしょう。
しかし、パソコン以外の世界に行くと、必ずしも1byteは8bitではない場合があるので注意が必要です。たとえば、引用したJIS規格のような情報通信の世界は、byteを同じ意味で使っているとは限らないわけです。