コンピューターがバイナリを使う理由と記憶素子の都合

コンピューターはバイナリ(「0」「1」の列)を使うと言われますが、これには記憶装置に入っている記憶単位の都合があると思います。なお、ハードウェアの素人なので間違っている部分もあると思います。ご了承ください。

記憶単位は物理学的な実体(物体)を持つため、ある程度の期間でデータが変化します。仮に装置Aは0、1、装置Bは0、1……100を入出力・保持でき、どちらも1日毎に保持する値が1増減するとします。データ更新すればデータを維持できるとしても、どちらも1日以上の停電でデータが変わります。

装置Bは閾値の導入によりこの問題を軽減できます。例えば50を閾値として50未満は「0」、50以上は「1」とします。記録する値が「0」なら入力0、「1」なら入力1とすれば50日ほど電源から離しても値「0、1」を維持できます。

記録する値が「0、1」、即ち閾値がひとつなのはコストの問題かと思います。閾値を増やせば記録する値も増やせます。しかし、電気回路の中で電圧・電流を細かに制御する装置はそれだけで体積、金額、製造時間を必要とします。理論的には複数の閾値も可能そうですが、小型化と低価格化の同時達成には不向きだったのかなと思います。

以上の理由からコンピューターは「0、1」のバイナリで記録していると考えられます。

ちなみにコンピューターはバイナリしか使わないというのはおそらく嘘で、古い8ビットのCPUでも0~255、新しい64ビットのCPUでは0~18,446,744,073,709,551,616の整数をまとめて扱えます。また、記憶単位も装置Aのように0、1そのものしか扱えなければコンピューターは普及していなかったはずです。

この記事が気に入ったらサポートをしてみませんか?