基本情報技術者(FE)対策
論理回路
回路問題は真理値表で必ず解ける
論理回路の問題は、図を見て「何の回路か」を当てにいくと外します。入力の組合せをすべて表に書き出して、出力を機械的に埋めるのが確実な型です。入力が 2 本なら 4 通り、3 本でも 8 通りしかないので、書き切るほうが速いのです。
前回の 2 進数と同じで、ここでの 1 と 0 は真と偽を表します。
基本の 5 つ
覚えるべき素子は 5 つです。
| 素子 | 出力が 1 になる条件 | 記号での書き方 |
|---|---|---|
| AND | 入力がすべて 1 | A・B |
| OR | 入力のどれかが 1 | A + B |
| NOT | 入力が 0 | Aの上に線 |
| XOR | 入力の 1 の個数が奇数 | A(+)B |
| NAND | AND の出力を反転したもの | ANDに反転の丸 |
XOR は「2 つの入力が違うときだけ 1」と読み替えると速く解けます。1 と 0 なら 1、1 と 1 なら 0 です。
NAND は 1 種類だけで NOT も AND も OR も作れるという性質があり、実際の集積回路で多用されます。両方の入力に同じ信号を入れると NOT になります。A が 1 なら AND の結果は 1、それを反転して 0 になるからです。
ド・モルガンの法則は数字で確かめる
AND と OR は反転を通すと入れ替わります。
- AND を反転したものは、それぞれを反転した OR と等しい
- OR を反転したものは、それぞれを反転した AND と等しい
A が 1、B が 0 で確かめます。A AND B は 0 なので、反転すると 1 です。一方、A の反転は 0、B の反転は 1 で、その OR は 1 です。両辺とも 1 で一致しました。選択肢に形の違う論理式が並ぶ問題では、この法則で片方を変形して同じ形にするか、値を 1 組入れて食い違う選択肢を消す方法が使えます。
半加算器と全加算器
1 桁の 2 進数どうしの足し算をする回路が半加算器です。出力は和 S と桁上げ C の 2 本あります。
- S は A と B の XOR
- C は A と B の AND
A が 1、B が 1 のときを通してみます。XOR は入力が同じなので S は 0、AND は両方 1 なので C は 1 です。合わせて読むと 2 進数の 10、つまり 10 進の 2 です。1 + 1 = 2 と合っています。
半加算器は下の桁からの桁上げを受け取れません。それを受け取れるようにしたのが全加算器で、半加算器 2 個と OR 1 個で作れます。多ビットの加算器は全加算器を桁の数だけ並べて、桁上げを次の桁へ渡していく形になります。
解く手順
- 入力の組合せをすべて縦に並べた表を書く
- 図の左から順に、途中の信号にも列を作って埋める
- 最後の出力列だけを見て、選択肢の真理値表と突き合わせる
途中の信号に列を作るのが要点です。頭の中で合成しようとすると、XOR と OR の取り違えが起きます。