7セグメントデコーダ
説明してきた通り、コンピューター(CPU)とは、組み合わせ回路と順序回路が交互に並んでいる電子回路と言えます。 順序回路はデータを保持する(=ひと呼吸とめておく)機能であり、その他の計算などの機能に係わる部分は 「組み合わせ回路」が基本的に担うことになります。
組み合わせ回路の実例として、7セグメントデコーダについて説明したいと思います。 回路については、 こちら にあるシミュレーション回路を参考にさせていただきました。
ご存じの通り?コンピュータ内で数は2進数で表します。HighとLowしかないためです。例えば、(4ビットで)0~10を表すと、 0 -> 0000, 1 -> 0001, 2 -> 0010, 3 -> 0011, 4 -> 0100, 5 -> 0101, 6 -> 0110, 7 -> 0111, 8 -> 1000, 9 -> 1001, 10 -> 1010 という具合です。4ビットですと、0~15までの16通りの数を表現できることになります。 電子部品に7セグメントLEDという電子部品があり、これは7つのLEDで1桁の数字を表示するものです。 入力にはa~gの入力端子があり、それぞれHighにすると図2-1に示す 対応する1本のLEDが発光する仕組みです(例えば、a,b,c,d,e,fをHighにすると対応するLEDが発光し、0が表示されます)。

図2-1 7セグメントLED
そして、図2-2がデコーダの回路です。入力が4つあり、下からそれぞれ1ビット目、2ビット目、3ビット目、4ビット目の2進数になります。 下記の回路では0~9まで、正しく7セグLEDが表示されるのが分かるでしょう。 さらに10 → A、11 → b、12 → C、13 → d、14 → E、15 → F まで表現できるようになっています。 右下にシミュレータに用意されていた7セグデコーダーを介したLEDも用意してみました。大きさは随分異なりますが同じく機能します。(※回路は真理値表からカルノー図を用いて簡素化したデジタル回路を使っています。こちらもカルノー図を作るjavascriptを作ったので後日説明できればいいなと思っています)
図2-2 7セグメントデコーダ回路