Команда хог выполняет операцию логического (побитового) ИСКЛЮЧАЮЩЕГО ИЛИ над своими двумя операндами. Результат операции замещает первый операнд; второй операнд не изменяется. Каждый бит результата устанавливается в 1, если соответствующие биты операндов различны, и сбрасывается в 0, если соответствующие биты операндов совпадают.
В качестве первого операнда команды хог можно указывать регистр (кроме сегментного) или ячейку памяти, в качестве второго - регистр (кроме сегментного), ячейку памяти или непосредственное значение, однако не допускается определять оба операнда одновременно как ячейки памяти. Операнды могут быть байтами или словами. Команда воздействует на флаги OF, SF, ZF, PF и CF, причем флаги OF и CF всегда сбрасываются, а остальные флаги устанавливаются в зависимости от результата.

Правила побитового ИСКЛЮЧАЮЩЕГО ИЛИ:


Первый операнд-бит 0101

Второй операнд-бит 0011

Бит результата 0110

Пример 1


mov AX,0Fh
хог AX,0FFFFh ;AX=FFF0h

Пример 2


хог ВХ,ВХ ;Обнуление ВХ

Пример 3


mov SI,0AAAAh
mov BX,5555h
xor SI,BX ;SI=FFFFh,BX=5555h

 Допустимо использование 32-битовьгх операндов и дополнительных режимов адресации 32-разрядных процессоров.

Пример


mov EAX,4444AAAAh
xor EAX,4441AAACh ;EAX=00050006h