【Excel】BITXOR関数-2つの数値のビット単位の排他的論理和(EXCLUSIVE OR)を求める-


(約文字)

2020-01-07

  • Keyword
  • Excel
  • BITXOR関数
  • 数値
  • ビット単位
  • EXCLUSIVE OR
  • 排他的論理和

BITXOR関数とは

エクセルの「BITXOR関数(ビット・エクスクルーシブ・オア)」は2つの数値のビット単位の排他的論理和(EXCLUSIVE OR)を返す関数です。

引数に指定された2つの値のビット単位の排他的な論理和を10進数で返します。

構文と引数

  • 365
  • 2019
  • 2016
  • 2013

=BITOR(数値1, 数値2)

引数必要性内容
数値1必須小数点の表示形式になっている必要があります。0以上の数値を指定します。
数値2必須小数点の表示形式になっている必要があります。0以上の数値を指定します。

BITXOR関数の解説

  • ・いずれかの引数が制約外の場合は、エラー値#NUM!が返されます。
  • ・いずれかの引数が (2^48)-1 より大きい場合は、エラー値#NUM!が返されます。
  • ・いずれかの引数が数値以外の値の場合は、エラー値#VALUE!が返されます。
  • ・実行結果では、両引数の同じビット位置の値が等しくない場合、つまり一方が0でもう一方が1の場合、そのビット位置は1になります。 たとえば、BITXOR(5,3) の場合、5は2進法では101で表され、3は2進法では011で表されます。 3つの位置のうち値が同じなのは左から3番目(一番右端)だけです。左から1番目、2番目の位置は結果が等しくないため1を返し、3番目の位置は結果が等しいので0を返します。
  • ・ビット位置から返される1の値は、右から左に2のべき乗で増加します。右端のビットは1(2の0乗)を返し、その左のビットは2(2の1乗)を返します。以降も同様です。
  • ・同じ例を使用した場合、1番目のビット(値1)は4(2の2乗)を返します。2番目のビット(値1)は2(2の1乗)を返します。3番目のビットは0を返します。4+2+0となり10進表現で6になります。
出典:Microsoft - Office サポート

BITXOR関数の使用例

=BITXOR(5,3)

=6

メカニズム

各位置の両方の数値を比較し、等しい場合は0を、等しくない場合は1を返します。

この場合、5の2進数は”101”で、3の2進数は”011”です。比較結果は”110”となり、10進数の「6」が返されます。

関連する関数

  • BITAND関数2つの数値のビット単位の論理積(AND)を求める
  • BITOR関数2つの数値のビット単位の論理和(OR)を求める
  • BITXOR関数2つの数値のビット単位の排他的論理和(EXCLUSIVE OR)を求める