Status register

Individual bits are implicitly or explicitly read and/or written by the machine code instructions executing on the processor.

Typically, flags in the status register are modified as effects of arithmetic and bit manipulation operations.

A status register may often have other fields as well, such as more specialized flags, interrupt enable bits, and similar types of information.

This is a list of the most common CPU status register flags, implemented in almost all modern processors.

For example, MIPS has no "carry bit" but a program performing multiple-word addition can test whether a single-word addition of registers overflowed by testing whether the sum is lower than an operand:[4] The sltu instruction sets tmp to 1 or 0 based on the specified comparison of its two other operands.

This scheme becomes less convenient when adding three or more words, as there are two additions when computing b + c + tmp, either of which may generate a carry, which must be detected with two sltu instructions.