Команда not выполняет инверсию битов указанного операнда, заменяя 0 на 1 и наоборот. В качестве операнда можно указывать регистр (кроме сегментного) или ячейку памяти размером как в байт, так и в слово. Не допускается использовать в качестве операнда непосредственное значение. Команда не воздействует на флаги процессора.

Правила побитовой инверсии:


Операнд-бит 0 1
Бит результата 1 0

Пример 1


mov AX,0FFFFh
not AX ;AX=0000h

Пример 2


mov SI,5551h
not SI ;SI=AAAEh

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

Пример


mov EAX,0C00SFF00h
not EAX ;EAX=3FFC00FFh