どんどん勉強する間隔があいてしまっている今日この頃。
先週末は17年をともに過ごした愛犬(チワワ)に旅立たれ、まだまだ心が癒えません。人間、泣いても泣いても、涙って尽きることがないのですね。ただ、悲しみは波のように打ち寄せては返すので、鼻がつーんとして涙が急にあふれたかと思えば、その数分後には平常心で談笑できる自分がいたり、と、なんだか感情のアップダウンがコントロールできません。
こんな状態で、本当に基本情報技術者の試験、受かるのでしょうか・・・(汗;)受かる気が1mmもしない、弱気な50代主婦です。
さて、そんな時はとにかく「無」になって前進あるのみ。
今日は、名前だけ聞くとややこしそうな
「論理積」「論理和」「排他的論理和(はいたてきろんりわ)」
についてまとめてみました!
難しそうに見えるけど、やってみると意外とパズル感覚で楽しいんですよ♪
この記事で分かること(目次)
◆ 論理演算ってなに?
コンピューターは 0(オフ)と1(オン) の世界で動いています。
その0と1を使って、条件を判断する演算を「論理演算」と呼びます。
今回扱うのはこの3つ!
| 演算名 | 記号 | 読み方 | 覚え方ざっくり |
|---|---|---|---|
| 論理積(AND) | & | アンド | 両方1のときだけ1 |
| 論理和(OR) | | | オア | どちらかが1なら1 |
| 排他的論理和(XOR) | ^ | エクスオア | 違うときだけ1 |
◆ それぞれの演算、図でイメージ!
① 論理積(AND):「両方OKならOK」
| A | B | A AND B |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
💡 両方とも1のときだけ、結果が1になります!
② 論理和(OR):「どちらかOKならOK」
| A | B | A OR B |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 1 |
💡 どっちかが1なら、結果は1!
③ 排他的論理和(XOR):「どちらかだけOKならOK」
| A | B | A XOR B |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
💡 「同じなら0、違えば1」になるのが特徴です!
◆ 日常にたとえてみよう!
- AND → 夫婦で「行こうか」って言ったときだけ旅行決定!
- OR → どっちかが「行きたい!」と言えばもう行く!
- XOR → 片方がYESで片方がNOなら行くけど、意見がそろったら逆にやめる(笑)
◆ 実際にビット演算してみよう
2つの数字を例に、ビットで演算してみます!
plaintextコピーする編集するA = 0101(=5)
B = 0011(=3)
① A AND B:
yamlコピーする編集する 0101
& 0011
= 0001(=1)
② A OR B:
yamlコピーする編集する 0101
| 0011
= 0111(=7)
③ A XOR B:
yamlコピーする編集する 0101
^ 0011
= 0110(=6)
→ 実際に数値で出してみると、ちょっとしたパズル気分でおもしろいです♪
◆ まとめ
- 論理積(AND):両方1のときだけ1
- 論理和(OR):どちらか1なら1
- 排他的論理和(XOR):違っていれば1
この3つを知っておくと、今後のビット操作や論理回路の話がグッとわかりやすくなります!
