NOT Logical NOT (One's Complement)
Flags affected:
O D I T S Z A P C OF: Overflow flag TF: Trap flag AF: Aux carry
F F F F F F F F F DF: Direction flag SF: Sign flag PF: Parity flag
<none> IF: Interrupt flag ZF: Zero flag CF: Carry flag
Legal forms:
NOT r8
NOT m8
NOT r16
NOT m16
NOT r32 386+
NOT m32 386+
Examples:
NOT CL
NOT DX
NOT EBX
NOT WORD [SI+5]
Notes:
NOT inverts each individual bit within the operand separately. That is, every bit that was 1 becomes 0, and every bit that was 0 becomes 1. This is the "logical NOT" or "one's complement" operation. See the NEG instruction for the negation, or two's complement, operation.After execution of NOT, the value FFH would become 0; the value AAH would become 55H.
Note | You must use a size specifier (BYTE, WORD, DWORD) with memory data! |
r8 = AL AH BL BH CL CH DL DH r16 = AX BX CX DX BP SP SI DI
sr = CS DS SS ES FS GS r32 = EAX EBX ECX EDX EBP ESP ESI EDI
m8 = 8-bit memory data m16 = 16-bit memory data
m32 = 32-bit memory data i8 = 8-bit immediate data
i16 = 16-bit immediate data i32 = 32-bit immediate data
d8 = 8-bit signed displacement d16 = 16-bit signed displacement
d32 = 32-bit unsigned displacement