螺旋を描いて…

螺旋 のごとく続く毎日を綴ります

XOR・略語の思い出・50…

見慣れないと思いますが…

排他的論理和(eXclusive OR)」の略です。

演算子名でもありますね。

 

2つの真偽を調べる場合、両方とも真の場合、両方とも偽の場合、片方が真で片方が偽の場合が2パターンの、計4種類の結果があります。

「2つのどちらかが真なら真」の場合は、「OR(論理和)」、「両方が真の場合のみ真」の場合は「AND(論理積)です。

XORの場合は、「片方のみが真で、もう片方が偽」の場合、真を返します。

「両方とも…」の場合は、偽ですね。

 

二進数のビット演算では、「1100 XOR 1001」なら、「0101」が返ります。

真は1,偽は0ですからね。

 

どういうときに使うかというと、主に「特定のビットを反転する」場合。

先ほどの例でも、千の位と一の位が、反転していますね。

ビットって、各ビットが「On / Off」を表している場合が多いので、それらを反転する機会は、結構あるのです。

 

あと…

「自身のXORを取ると、ゼロになる」ことを、利用する場合もあるそうです。

全てのビットが、同じになりますからね。

 

それにしても、何故「排他的」って言うんでしょうね。

排他的とは、特定の人のみで構成して、部外者を排除する、という意味です。

 

どうやら、片っぽが真なら片っぽは必ず偽であるところが、「排他的」とされたようですよ。

 

まぁ、見慣れないとは思いますが、実際の生活では、実はよく出てくパターンです。

例えば、機内食の「Meat or Fish?」

肉か魚の、どちらかを選ぶことが出来ますが、両方は選べませんよね。

両方拒否する人も、ごくわずかでしょう。

 

この状況が、まさしく「排他的論理和(XOR)」なんですよ。

 

 

次の略語は、こちら

kiha-gojusan-hyakusan.hatenablog.com

 

 

前の略語は、こちら

kiha-gojusan-hyakusan.hatenablog.com