これを試して
>> A = [1 2];
>> B = [1 4];
>> xor(A, B)
ans =
     0     0
どのように?間違いはどこですか?
ビット単位の XOR を使用する必要があります。
>> A = [1 2]
>> B = [1 4]
>> C = bitxor(A, B)
>> C
C =
     0     6
    間違いは、matlab がすべて != 0 を true として扱うことだと思います。そして、私たちが知っているように
true xor true -> false.
おそらく、matlab の高速 xor 配列が役に立ちます。