論理演算
読み:ろんりえんざん
外語:logical operation
真値(
true
)と偽値(
false
)という二つの
論理値
(ブーリアン値とも呼び、一般に
2進数
で表現きるもの)で行なう演算のこと。
実際には
論理和
、
論理積
、
論理否定
の三つの演算を主軸とし、それを組み合わせて作られた複合的な演算がある。
目次
概要
特徴
一覧
単項演算
二項演算
挙動
真偽
代表的な論理演算
概要
プログラミングにおいては、
ビット演算
と呼ばれる演算の一種である。
プログラミングでは様々な論理演算が利用できるが、大きく二つに分けることができる。具体的には、与えられた
引数
に対してビットごとに演算をするものと、引数全体を一つの論理値(ブーリアン)として扱い演算をするものとがある。
Cの場合はこの二種類を「ビット論理演算子」と「論理関係演算子」として区別している。
特徴
電子計算機は論理回路によって作られている。その論理回路の特徴をそのままに用いる演算が論理演算である。
人間
に分かりやすい四則演算は、論理回路的には複雑なものとなり、一般に低速である。
加減算
程度なら、回路規模はそれほど巨大化しないため比較的高速に処理できるが、乗算・除算ともなると回路規模は膨大になり、処理は低速となる。
一方、論理演算は論理回路も小さく済むため非常に高速である。
一覧
単項演算
論理否定
(NOT)
二項演算
論理和
(OR)
論理積
(AND)
排他的論理和
(XOR)
否定論理和
(NOR) ( ̄(OR))
否定論理積
(NAND) ( ̄(AND))
否定排他的論理和
(NXOR) ( ̄(XOR)) (別名: 論理等価、排他的論理積)
論理包含
(IMP)
挙動
真偽
論理和
は、二つの論理値のどちらかが真ならば真、両方偽なら偽。
論理積
は、二つの論理値の両方が真ならば真、それ以外は偽。
論理否定
は、真なら偽、偽なら真。
代表的な論理演算
一項演算の演算結果
論理否定
(NOT)
0
1
1
0
二項演算の演算結果
論理積
論理和
排他的論理和
否定論理積
否定論理和
AND
OR
XOR/EOR/EXOR
NAND
NOR
0
0
0
0
0
1
1
0
1
0
1
1
1
0
1
0
0
1
1
1
0
1
1
1
1
0
0
0
再検索