Skip to main content

Cos'è un overflow aritmetico?

Un overflow aritmetico è una condizione che si verifica nei computer, specialmente nell'area della programmazione del computer, quando un calcolo o un funzionamento produce un risultato troppo grande per il sistema di archiviazione o il registro da gestire.L'overflow può anche fare riferimento all'importo con il risultato dato supera la memoria designata per la memorizzazione.In alcuni casi, l'overflow di dati può essere archiviato in un'altra posizione di archiviazione dei dati;In altri, può causare l'arresto di un programma, eseguire lentamente o produrre risultati imprecisi.L'overlow aritmetico non è limitato ai computer personali o aziendali completi, poiché anche semplici calcolatori portatili e dispositivi di comunicazione hanno anche limiti all'entità dei valori che possono gestire.

I programmatori tendono a imparare i metodi per affrontare errori di overflow aritmetici all'inizio delle loro educazioni, come comeTendono ad essere errori di programmazione molto comuni da ricevere.Esistono molti metodi diversi per consegnare il trabocco aritmetico.La progettazione del programma gioca una parte molto importante;Un programma ben progettato che utilizza tipi e lunghezze di dati coerenti e corretti non dovrebbe provare tali errori.Se viene messa una grande cura nel controllare l'ordine delle operazioni e mantenere tutto coerente, gli errori di overflow possono essere evitati del tutto.

Un altro modo per affrontare gli errori di overflow aritmetici è quello di abbattere le operazioni in passaggi più piccoli.Spesso è più facile per un sistema gestire operazioni semplici e piccole rispetto a operazioni complesse che coinvolgono grandi numeri e calcoli eccessivi.Quando non è estremamente importante che il numero restituito sia completamente accurato, a volte sarà sufficiente scrivere il programma in modo tale da avvisare l'utente dell'errore di overflow ma restituisce comunque un valore.Il modo più comune per gestire un errore di overflow aritmetico è ignorarlo completamente.Sebbene questo sia di solito innocuo, può dare risultati errati e può compromettere l'utilità e l'efficienza del programma.

Ariane 5 Flight 501 illustra chiaramente i pericoli degli errori di overflow aritmetici.Il volo è stato il primo test del sistema di lancio europeo Ariane 5, che ha riutilizzato gran parte del codice dal vecchio sistema Ariane 4.L'accelerazione di Ariane 5 era, tuttavia, significativamente maggiore di quella dell'Ariane 4 e la programmazione non era adeguata per gestire i valori maggiori necessari.In quanto tale, il razzo ha lasciato il percorso di volo previsto 37 secondi dopo il lancio e ha dovuto essere distrutto.Questo semplice errore di programmazione costa centinaia di milioni di dollari USA.