I see this information on the site,
During a negation (NEG), the carry flag is set unless the operand is zero, in which case it is cleared.
But, it doesn't help me reason about the carry flag. Why does it behave this way and how does NEG trigger a flag that supposed to represent a carry-out.
In this answer they quote the manual,
The CF flag set to 0 if the source operand is 0; otherwise it is set to 1.
In my head, and the way I see this explained I'm doing a bitwise-negation, and adding one. Why is the carry flag set? Is there any process that will help me grok this without understanding rules like the one above.