NOT演算子 【NOT operator】 論理否定演算子
概要
NOT演算子(NOT operator)とは、プログラミング言語の論理演算子の一つで、NOT演算(論理否定)を行うもの。一つの被演算子(オペランド)を取る単項演算子で、ビットや真理値を反転する。プログラミングでは、2進数や真理値の論理否定(NOT)、論理和(OR)、論理積(AND)などを求める論理演算を頻繁に行う。NOT演算子は論理否定を求めるための演算子で、値を反転する。真理値の場合、真(true)なら偽(false)、偽なら真となり、2進数の場合、1なら0、0なら1になる。
C言語やその記法を受け継ぐ多くの言語では、「!」がNOT演算子で、ビット列の各ビットごとの否定(ビット反転)、真理値の否定の両方に用いられる。「not」などのキーワードを用いる言語もある。
条件式などで三項以上を論理演算子で連結した際、どの演算を先に行うかの優先順位が決まっており、ほとんどの言語ではNOT演算子→AND演算子→OR演算子の順序となっている。例えば「!a & b」は「aの論理否定とbの論理積を取る」式を意味し、順序を入れ替えたい場合は数式と同じように優先したい演算を括弧で括る。「aとbの論理積を反転したい」なら「!(a & b)」となる。
(2023.5.18更新)