Co se stane, když výsledek matematické operace je větší, než rozsah výsledného čísla?
Co když chcete sečíst 100 + 54 a uložit jej do bajtu, který pracuje ve dvojkovém doplňku? Bajt ve dvojkovém doplňku dovoluje pouze hodnoty od -128 do +127. Číslo 154 se tam nevejde.
Máte na výběr.
- Výsledek můžete uložit do čísla s větším rozsahem, například 232
- Rozsah nezměníte – dojde k přetečení
Přetečení znamená, že výsledek operace přesahuje rozsah, do kterého se číslo vejde. Podtečení je totéž ale na druhou stranu, když je číslo menší, než je záporná hranice čísla.
Matematicky
100 + 54 = 154 matematicky vypadá takto.
- 10010 = 110010002
- 5410 = 1101102
- 15410 = 100110102
V omezené paměti počítače
Pokud máte na výsledek bajtový rozsah (-128, +127) ve dvojkovém doplňku tak se výsledek interpretuje jako úplně jiné číslo!
- 10010 = 110010002
- 5410 = 001101102
15410= 100110102 = -10210