| |||
| Home > Writing ARM Assembly Language > Conditional execution > The ALU status flags | |||
The APSR contains the following ALU status flags:
Set when the result of the operation was Negative.
Set when the result of the operation was Zero.
Set when the operation resulted in a Carry.
Set when the operation caused oVerflow.
A carry occurs if the result of an addition is greater than or equal to 232, if the result of a subtraction is positive, or as the result of an inline barrel shifter operation in a move or logical instruction.
Overflow occurs if the result of an add, subtract, or compare is greater than or equal to 231, or less than -231.