条件の答え
0は偽、1は真
「利用登録は済んでいる?」→ YESなら1、NOなら0
ここからは、ゼロと一を、数の大きさではなく、条件の答えとして使います。条件が成り立たないならゼロ。成り立つなら一。偽と真、または、オフとオンと考えても大丈夫です。
IT基礎 / LESSON 06
0と1を、条件が成り立つかどうかの答えとして使います。表を覚える前に、演算の意味をつかみます。
条件の答え
「利用登録は済んでいる?」→ YESなら1、NOなら0
ここからは、ゼロと一を、数の大きさではなく、条件の答えとして使います。条件が成り立たないならゼロ。成り立つなら一。偽と真、または、オフとオンと考えても大丈夫です。
AND / 論理積
| A | B | A AND B |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
学生証がある AND 利用登録済み → 入室できる
アンドは、二つの条件が、どちらも成り立つときだけ一になります。学生証を持っていて、さらに、利用登録も済んでいる。この二つがそろったときだけ、入室できる仕組みです。
OR / 論理和
| A | B | A OR B |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 1 |
暗証番号 OR 指紋認証 → どちらかが成功すれば開く
オアは、少なくとも一方が成り立てば一になります。暗証番号でも、指紋認証でも、どちらかが成功すればロックが開きます。両方とも成功した場合も一です。ここが、普段の「どちらか」という言葉と少し違うところです。
NOT / 否定
| A | NOT A |
|---|---|
| 0 | 1 |
| 1 | 0 |
ノットは、答えを反対にする演算です。ゼロは一に、一はゼロになります。入力は一つだけです。「エーではない」と考えると、意味をつかみやすくなります。
XOR / 排他的論理和
| A | B | A XOR B |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
1 OR 1 = 1 / 1 XOR 1 = 0
エックスオアは、二つのうち、ちょうど一方だけが一のときに一になります。両方ともゼロならゼロ。両方とも一でもゼロです。二つのクーポンのうち、一つだけ選べる仕組みを想像してみよう。
ビット列の演算
10101100100011100110各桁を別々に判断する。足し算ではないので桁上がりしない。
ビットが並んでいても、使うルールは同じです。同じ位置のビットどうしを、一桁ずつ判断します。いち、ゼロ、いち、ゼロと、いち、いち、ゼロ、ゼロをアンドすると、いち、ゼロ、ゼロ、ゼロ。オアすると、いち、いち、いち、ゼロ。エックスオアすると、ゼロ、いち、いち、ゼロです。足し算ではないので、桁上がりはありません。
NAND / 否定論理積
NAND = NOT (A AND B)
A・B → AND → NOT → NAND
| A | B | AND | NAND |
|---|---|---|---|
| 0 | 0 | 0 | 1 |
| 0 | 1 | 0 | 1 |
| 1 | 0 | 0 | 1 |
| 1 | 1 | 1 | 0 |
ナンドは、最初にアンドを計算し、その答えをノットで反対にしたものです。アンドが一になるのは、両方とも一のときだけ。その答えを反転するので、ナンドでは、両方とも一のときだけゼロになります。
NOR / 否定論理和
NOR = NOT (A OR B)
| A | B | OR | NOR |
|---|---|---|---|
| 0 | 0 | 0 | 1 |
| 0 | 1 | 1 | 0 |
| 1 | 0 | 1 | 0 |
| 1 | 1 | 1 | 0 |
もう一つだけ見ておこう。ノアは、オアの答えを反対にした演算です。オアは、一方でも一なら一でした。そのためノアは、両方ともゼロのときだけ一になります。
確認してみよう
エーとビーが、どちらも一です。このとき、エックスオアとナンドの結果は、どの組み合わせになるでしょう?
正解は A:XOR = 0 / NAND = 0
その通り。正解はエーです。エックスオアは、ちょうど一方だけが一のときに一なので、今回はゼロ。ナンドは、まずアンドすると一になり、それを反転するのでゼロです。
だいじょうぶ。演算を一つずつ考えよう。エックスオアは、二つが同じならゼロです。ナンドは、先にアンドを計算してから、その答えを反対にしてみよう。
まとめ
1 AND 1 = 11 OR 0 = 1NOT 1 = 01 XOR 1 = 0NOT (A AND B)NOT (A OR B)論理演算は、名前だけを暗記しなくても大丈夫です。アンドは両方。オアは一つ以上。エックスオアは一つだけ。ノットは反転です。ナンドとノアは、先に元の演算を考えてから、最後に答えを反転します。表は暗記するものではなく、すべての組み合わせを確かめるための道具です。
0と1で、条件を組み立てられるようになりました。