short s1 = ...
short s2 = ...
short result = (short) (s1 ^ s2);
This is the most efficient way to XOR two shorts together. It does not run into the overhead of creating BigIntegers and the cast will never cause an overflow issue as both s1 and s2 are shorts to begin with.