情報量:ビット/bit/SI併用 音圧のレベル:デシベル/decibel/SI併用

定義:

デジタルコンピュータが扱うデータの最小単位

(0 または 1 のような2つの状態をとることができる)

単位の名付け親

情報量の最小単位 bit。この言葉は,1947年にアメリカの数学者ジョン・テューキー(1915年〜2000年)が binary digit (2進数の桁)を縮めて bit としたのが始まりです。

英語で「小さなかけら」を意味する単語も bit ですが,それとは別のものです。


このジョン・テューキーは,令和2年度から中学校数学でも扱われるようになる箱ひげ図を考案した人でもあります。
箱ひげ図は,データの分布のようすを視覚的にとらえられるようにした統計図で,最小値,第1四分位数,第2四分位数(=中央値),第3四分位数,最大値をもとに作図します。

四分位数というのは,データを大きさの順に並べたときに4等分した位置にある値のことです。小さい方から順に,第1四分位数,第2四分位数,第3四分位数といいます。

日本のプロ野球のチームについて,2019年9月1日の時点での1軍登録選手の年俸(推定)を箱ひげ図で表してみました。

セ・リーグのチーム別年俸の箱ひげ図 パ・リーグのチーム別年俸の箱ひげ図

どのチームの箱ひげ図も,ひげが右方向に伸びていく形をしていますね。

プロ野球選手の年俸は前年度の年俸を基準に,活躍度合いの評価をかけて決められることが多いようです。高額年俸の選手が活躍すると年俸の上がり幅も大きくなるので,こうした形になるのでしょうね。

セ・リーグでは巨人,パ・リーグではソフトバンクの四分位範囲(箱の部分)が,他のチームよりぐっと右に伸びているのが目立ちます。ただ,どちらのチームもひげが左方向にも伸びていて,チャンスをつかんだ若手選手がいることをうかがわせます。

二進法

わたしたちは,普段0〜9までの10個の数字を組み合わせて数字を表現しています。

1から順に数えていくと,一番大きい9の次は桁があがって10になります。このような桁が上がるごとに10倍になる数の表し方を十進法といいます。

これに対して,0と1の2個の数字を組み合わせて表す方法を二進法といいます。

二進法で数字を数えると,一番大きい数字は 1 なので,1の次は桁が上がって10になります。つまり,二進法の10は十進法の2です。そして,11(十進法の3)の次は桁が上がって100(十進法の4)になります。

コンピュータの内部では,この二進法を使って数字を表現しています。

二進法と十進法の数字のようすをアニメーションでご覧ください。

このように,二進法で8桁,つまり 8 bit で,十進法の 0〜255 の数字を表すことができます。

ハードディスクやメモリの容量などで B(バイト)という単位を耳にしたことがあるでしょう。この B というは,8 bit のことです。1 B = 8 bit です。

小さな数でもたくさんの桁が必要で面倒そうに思うかもしれませんが,ON/OFFに応じた二つの状態に絞ることで,記述や読み取りの誤りを防ぐことができます。

例えば,RAM(Random Access Memory:読み書き可能なメモリ)の場合,1 bit ごとに1つのコンデンサが割り当てられていて,1 を書き込むには電圧をかけてコンデンサに充電し,0 を書き込むにはコンデンサを放電します。
読み出すときには,コンデンサを放電させて,電荷が検出されれば 1,されなければ 0 と判定します。

1つのコンデンサで,例えば10個の状態を判定しようとすると,どのくらい充電するか,どのくらい放電されたかを検出しなくてはなりません。また,正しい判定を得る精度なども指定しなくてはなりません。

bit の利点モデル図

それに対して,ON/OFFだけなら誤判定しづらいというわけです。

bit の利点モデル図
1 bit ってどのくらい?

1 bit はデータの最小単位ですから,0 か 1 を表すことしかできません。

大きな数や文字などは,これを数桁のセットにして扱います。

例えば,英数字1文字は,7 bit(=128種類) で表すことができます。
次の表は,最初の3桁を縦に,続く4桁を横に示したものです。100 0001 が A という文字に対応しています。また,赤字は文字そのものではなく,機器操作などに使う制御文字です。010 0000 の SP は,制御文字ではなくスペースです。

0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
000 NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF CR SO SI
001 DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US
010 SP ! " # $ % & ' ( ) * + , - . /
011 0 1 2 3 4 5 6 7 8 9 : ; < = > ?
100 @ A B C D E F G H I J K L M N O
101 P Q R S T U V W X Y Z [ \ ] ^ _
110 ` a b c d e f g h i j k l m n o
111 p q r s t u v w x y z { | } ~ DEL

上の表のものに各言語に固有の文字を追加した 8 bit で欧米の言語を表記していました。

しかし,日本語や中国語などの文字数の多い言語は,8 bit 目を追加しただけでは到底表示しきれません。また,欧米のユーザにとっても,8 bit 目が地域によって異なる割り当てを使用するので混乱が生じえます。
そこで,世界中の文字を共通の文字集合で扱える Unicode という規格が策定されました。バージョンを重ねるごとに文字が増えていて,2019年9月1日現在,137,929字が収録されています。



今度は,色を扱う場面を考えてみましょう。

現在モニターに表示されている色は,光の三原色 R(Red:赤)G(Green:緑)B(Blue:青) それぞれ 8 bit (=256階調)が割り当てられたものです。256 × 256 × 256 = 16,777,216 色の表現が可能です。

次の画像は,沖縄県水納島の砂浜です。

フルカラーの砂浜

1995年に発売されて大ヒットしたOS,Windows95は 8 bit カラー,256色のパレットで表現していました。この 8 bit カラーは,現在でもwebサイトに載せる画像を軽量化するときなどに使います。

砂浜の画像を 8 bit カラーに変換してみました。

8 bit カラーの砂浜

階調がつぶれてしまいましたね。

今度は,同じ 8 bit(256階調)を全部濃淡に当ててみましょう。グレースケール画像です。

グレースケールの砂浜

最後に,この濃淡をON/OFFの2階調にしてみましょう。これが 1 bit カラー(モノクロ)です。

モノクロの砂浜