論理演算
読み:ろんりえんざん
外語:logical operation

 真値(true)と偽値(false)という二つの論理値(ブーリアン値とも呼び、一般に2進数で表現きるもの)で行なう演算のこと。
 実際には論理和論理積論理否定の三つの演算を主軸とし、それを組み合わせて作られた複合的な演算がある。
目次

概要
 プログラミングにおいては、ビット演算と呼ばれる演算の一種である。
 プログラミングでは様々な論理演算が利用できるが、大きく二つに分けることができる。具体的には、与えられた引数に対してビットごとに演算をするものと、引数全体を一つの論理値(ブーリアン)として扱い演算をするものとがある。
 Cの場合はこの二種類を「ビット論理演算子」と「論理関係演算子」として区別している。

特徴
 電子計算機は論理回路によって作られている。その論理回路の特徴をそのままに用いる演算が論理演算である。
 人間に分かりやすい四則演算は、論理回路的には複雑なものとなり、一般に低速である。加減算程度なら、回路規模はそれほど巨大化しないため比較的高速に処理できるが、乗算・除算ともなると回路規模は膨大になり、処理は低速となる。
 一方、論理演算は論理回路も小さく済むため非常に高速である。

一覧

単項演算

二項演算

挙動

真偽
 論理和は、二つの論理値のどちらかが真ならば真、両方偽なら偽。
 論理積は、二つの論理値の両方が真ならば真、それ以外は偽。
 論理否定は、真なら偽、偽なら真。

代表的な論理演算
 一項演算の演算結果
 論理否定(NOT)
01
10
 二項演算の演算結果
 論理積論理和排他的論理和否定論理積否定論理和
ANDORXOR/EOR/EXORNANDNOR
0000011
0101110
1001110
1111000

再検索