WikiDer > Überlauf (Computer)

Overflow (informatica)

In der Informatik gibt es Überlauf wenn das Ergebnis einer Berechnung zu groß ist, um im betreffenden registrieren oder Speicheradresse. Man unterscheidet zwischen kontrolliertem Überlauf, bei dem ein tragen entsteht als Ergebnis von a Zusatz oder ein Subtraktion von Zahlen eines vorzeichenlosen Typs können nicht dargestellt werden. Bis zum Flagge tragen kann überprüft werden, ob ein Überlauf vorliegt. Ein echter Überlauf tritt auf, wenn das Ergebnis einer Berechnung ein Vorzeichen hat, das nicht mit dem erwarteten Vorzeichen übereinstimmt, z. B. wenn die Addition zweier positiver Zahlen negativ ausfällt. Es ist daher nützlich, Überlaufflagge zu überprüfen nach dem Addieren oder Subtrahieren von Zahlen in check Zweierkomplement Darstellung.

Es gibt mehrere Methoden, um mit Überlauf umzugehen:

  1. Design: unter Verwendung der richtigen Datentypen und unter Berücksichtigung der vorkommenden Zeichen und Größe der Zahlen.
  2. Vermeidung: Durch sorgfältige Prüfung der Vorgänge im Vorfeld und Berücksichtigung der Reihenfolge kann ein Überlauf vermieden werden.
  3. Handhabung: Wenn ein Überlauf erwartet wird, kann dieser erkannt und entsprechend behandelt werden.
  4. Propagation: Wenn ein Ergebnis zu groß ist, um gespeichert zu werden, kann ihm ein spezieller Wert zugewiesen werden, um anzuzeigen, dass ein Überlauf aufgetreten ist, und dieser Wert wird bei allen nachfolgenden Operationen beibehalten. So kann am Ende einer langen Berechnung festgestellt werden, dass irgendwo ein Überlauf stattgefunden hat und es ist nicht notwendig, jeden Schritt einzeln zu prüfen. Dies wird häufig von Gleitkomma-Hardware verwendet (FPU) unterstützt.
  5. Ignorieren: Oft wird ein Überlauf nicht berücksichtigt und sein Auftreten einfach ignoriert. Dies kann natürlich zu falschen Ergebnissen führen und zu einem Absturz das Programm leiten.

Siehe auch