Saturation arithmetic limits results of all operations to a fixed range between a minimum and maximum value; the results are "saturated" at the limits.
- If a result is greater than the maximum, it is set ("clamped") to the maximum
- If it is below the minimum, it is clamped to the minimum.
Properties like associativity and distributivity may fail in saturation arithmetic.
Examples (i.e. limits are -100..100)
- 60 - 50 = 10 (no saturation)
- 60 + 50 = 100 (saturated)
- (60 + 50) - 50 = 50 (saturated)
- 60 + (50 - 50) = 60 (no saturation)
- 10 × 11 - 11 = 89 (saturated)