xor, ^, pcrxor

Result = expression1 xor expression2 # pcrcalc
Result = expression1 ^ expression2 # python
Result = pcrxor(expression1, expression2) # python
expression1

spatial, non spatial boolean

expression2

spatial, non spatial boolean

Result

spatial; non spatial if expression1 and expression2 are non spatial boolean

Operation

The cell values on expression1 and expression2 are interpreted as Boolean values; where 1 is TRUE and 0 is FALSE. For each cell the Boolean xor evaluation is performed: if both expression1 and expression2 have a cell value 1 (TRUE) or both have a cell value 0 (FALSE) Result has a cell value 0 (FALSE) on the corresponding cell; if one of the expressions (expression1 or expression2) has a cell value 1 (TRUE) and the other a cell value 0 (FALSE) Result has cell value 1 (TRUE).

Cross table of the xor operator.

xor

expression1

Result

expression2 True

True

False

expression2 True

False

True

expression2 False

True

True

expression2 False

False

False

Notes

A cell with missing value on expression1 or expression2 or on both expressions results in a missing value on Result at the corresponding cell.

Group

This operation belongs to the group of Boolean operators

Examples

  1. • pcrcalc
    binding
    Result = Result.map;
    Expr1 = Expr1.map;
    Expr2 = Expr2.map;
    initial
    report Result = Expr1 xor Expr2;

    • python
    Expr1 = readmap(“Expr1.map”)
    Expr2 = readmap(“Expr2.map”)
    Result = Expr1 ^ Expr2

    Result.map

    Expr1.map

    Expr2.map

    ../../_images/xor_Result.png ../../_images/and_Expr1.png ../../_images/and_Expr2.png