Documentation Center

  • Trial Software
  • Product Updates


Bit-wise XOR


  • intout = bitxor(integ1,integ2) example
  • intout = bitxor(integ1,integ2,assumedtype) example
  • objout = bitxor(netobj1,netobj2)



intout = bitxor(integ1,integ2) returns the bit-wise XOR of integ1 and integ2.


intout = bitxor(integ1,integ2,assumedtype) assumes that integ1 and integ2 are of assumedtype.

objout = bitxor(netobj1,netobj2) returns the bit-wise XOR of the .NET enumeration objects netobj1 and netobj2.


expand all

Truth Table

Create a truth table for the logical XOR operation.

A = uint8([0 1; 0 1]);
B = uint8([0 0; 1 1]);
TTable = bitxor(A, B)
TTable =

    0    1
    1    0

bitxor returns 0 if both bit-wise inputs are equal.

Negative Values

Explore how bitxor handles negative values.

MATLAB encodes negative integers using two's complement. Thus, the bit-wise XOR of -5 (11111010) and 6 (00000110) is -3 (11111100).

C = -5;
D = 6;
ans =


Input Arguments

expand all

integ1, integ2 — Input valuessigned integer arrays | unsigned integer arrays | double arrays

Input values, specified as signed integer arrays, unsigned integer arrays, or double arrays. integ1 and integ2 must be the same data type, or one must be a scalar double value.

  • If integ1 and integ2 are double arrays, and assumedtype is not specified, then MATLAB treats integ1 and integ2 as unsigned 64-bit integers.

  • If assumedtype is specified, then all elements in integ1 and integ2 must have integer values within the range of assumedtype.

Data Types: double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

assumedtype — Assumed data type of integ1 and integ2'uint64' | 'uint32' | 'uint16' | 'uint8' | 'int64' | 'int32' | 'int16' | 'int8'

Assumed data type of integ1 and integ2, specified as 'uint64', 'uint32', 'uint16', 'uint8', 'int64', 'int32', 'int16', or 'int8'.

  • If integ1 and integ2 are double arrays, then assumedtype can specify any valid integer type, but defaults to 'uint64'.

  • If integ1 and integ2 are integer type arrays, then assumedtype must specify that same integer type.

Data Types: char

netobj1, netobj2 — Input values.NET enumeration objects

Input values, specified as .NET enumeration objects. You must be running a version of Windows® to use .NET enumeration objects as input arguments.

bitxor is an instance method for MATLAB® enumeration objects created from a .NET enumeration.

Output Arguments

expand all

intout — Bit-wise XOR resultsigned integer array | unsigned integer array | double array

Bit-wise XOR result, returned as a signed integer array, unsigned integer array, or double array. intout is the same data type and size as integ1 and integ2.

  • If either integ1 or integ2 is a scalar double, and the other is a non-double integer type, intout is the non-double integer type.

objout — Bit-wise XOR result.NET enumeration object

Bit-wise XOR result, returned as a .NET enumeration objects.

See Also

| | | | | | |

Was this topic helpful?