SYNOPSIS
        string xor_bits(string str1, string str2);

BESCHREIBUNG
        <str1> und <str2> sind beiden Bitstrings. Das Resultat von xor_bits()
        ist ein Bitstring mit dem binaeren XOR von <str1> und <str2>, also
        ein String, in dem ein Bit nur gesetzt ist, wenn es entweder in <str1>
        oder in <str2> vorkommt, nicht aber in beiden.

BEISPIELE
        string s1, s2, s3;
        s1 = set_bit("", 3); s1 = set_bit(s1, 15);  -> s1 ist "( ("
        s2 = set_bit("", 3); s2 = set_bit(s2, 4);   -> s2 ist "8"
        s3 = xor_bits(s1, s2);
        -> s3 ist "0 (", es sind also das 4. und das 15. Bit gesetzt.

SIEHE AUCH
        clear_bit(E), set_bit(E), test_bit(E), next_bit(E), last_bit(E)
        count_bits(E), and_bits(E), or_bits(E), invert_bits(E), copy_bits(E)
