cmc

Complement Carry Flag

CMC

Toggles the CF flag.

Pseudocode Operation

CF ← NOT CF

Encoding

Binary Layout
F5
+0
 
Format Legacy
Opcode F5
Extension Base

Operands

Related

More in Base

Instruction Forms

Opcode Instruction Op/En 64/32-bit Mode CPUID Description
F5 CMC ZO Valid Valid Complement CF flag.

Description

Complements the CF flag in the EFLAGS register. CMC operation is the same in non-64-bit modes and 64-bit mode.

Operation

EFLAGS.CF[bit 0] := NOT EFLAGS.CF[bit 0];

Flags Affected

The CF flag contains the complement of its original value. The OF, ZF, SF, AF, and PF flags are unaffected. Exceptions (All Operating Modes) #UD If the LOCK prefix is used. CMC-Complement Carry Flag Vol. 2A 3-156