前回、入出力インタフェース(USB・HDMIなど)を整理しました。今回は、以前学んだ論理演算(AND・OR・XOR・NOT)を、電子回路として表す「論理回路」を整理します。
論理回路とは
論理回路とは、AND・OR・NOTといった論理演算を、電気信号のオン・オフ(1と0)を使って実現する回路のことです。コンピュータの内部では、この論理回路が無数に組み合わさって、計算や処理が行われています。
論理演算のときに整理した「両方1のときだけ1になる(AND)」「どちらかが1なら1になる(OR)」といった考え方が、そのまま回路の図として表現される、というイメージです。
基本のゲート(素子)の記号
論理回路では、それぞれの演算を「ゲート」と呼ばれる図形の記号で表します。
- ANDゲート:両方の入力が1のときだけ、出力が1になる
- ORゲート:どちらかの入力が1であれば、出力が1になる
- NOTゲート:入力を反転させて出力する(唯一、入力が1つ)
これらは、以前整理した論理演算の考え方と、そのまま対応しています。「回路の形」と「演算の意味」をセットで覚えることで、記号を見ただけで動作を判断できるようになります。
NANDゲートとは
NANDゲートは、ANDゲートの出力を反転させたものです。「NOT」と「AND」を組み合わせた名前のとおり、両方の入力が1のときだけ出力が0になり、それ以外はすべて出力が1になります。
同じように、ORゲートの出力を反転させたものは「NORゲート」と呼ばれます。「基本のゲート+反転」という組み合わせで名前がついている、と理解すると覚えやすくなりました。
真理値表で確認する
論理回路の問題では、入力の組み合わせに対して、出力がどうなるかをまとめた「真理値表」がよく使われます。
自分は、ANDゲートとORゲートの真理値表をまず正確に覚え、そこから「NANDはANDの出力を反転させただけ」というように、基本の表を応用して他のゲートを導き出す形で覚えるようにしています。すべてのゲートを個別に丸暗記するより、基本の2つ(ANDとOR)を正確に押さえておくほうが、応用が利くと感じています。
学習してみた感想
論理回路は、以前の論理演算の内容が土台になっていたおかげで、思ったよりスムーズに理解できました。記号の形を覚えることよりも、「結局、中でどの演算をしているのか」を意識することのほうが、応用問題への対応力につながると感じています。
次回は、科目Bに戻り、クイックソート・マージソートの仕組みを整理します。
