Исключающее ИЛИ: A xor B принимает значение "Истина" тогда, когда значения A и B неодинаковы... Если и A и B одновременно равны True (или одновременно - False), то Xor вернет "Ложь"...
Кстати, очень удобно: если 2 раза произвести Xor с одним и тем же числом, то первое значение будет восстановлено.
B := 39; B := B xor 12; { b = 43 } B := B xor 12; { b = 39 }
Все правильно, но я подумал, что все словесные объяснения сильно проигрывают перед простой табличкой. Для пользы дела привожу тут три таблички для основных операций. Чтобы сохранить форматирование, пользуюсь тегом CODE