Was ist ein Zahl-Überlauf?

Zahlüberlauf bezieht das auf Phänomen, das in bestimmten Computerdatenarten, wohin ihre Zeichen von positivem zum Negativ schalten oder umgekehrt auftritt, wenn sie die Enden ihrer anwendbaren Strecken erreichen. In den Computerstrecken haben Zahldatenarten Kreisstrecken, und wenn sie ein Ende ihrer Strecke erreichen, umziehen sie sofort auf das andere Ende ihrer Strecke r. Dieses genannt auch Zahlüberlauf.

Kann eine Ganzzahl mit Vorzeichen eine Strecke der Werte von -231 (231) - 1. halten. Diese ganze Zahl kann einen Wert von nicht haben (- 231) - 1; eher ist die folgende Zahl, die sie zu erhöht, am anderen Ende von seiner Strecke: (231 - 1). Die Änderung von negativem am Positiv am Ende seiner Strecke ist ein Beispiel von Zahlüberlauf. Aus dem gleichen Grunde kann eine ganze Zahl einen Wert von 231 nicht haben; dieser Wert anstatt schalten zum anderen Ende seiner Strecke und werden -231.

Dieser Überlauf hat bedeutende Konsequenzen bei der Programmierung. Eine Reihe kann da viele Indizes in ihr nur haben, während die Zahlart gewährt, und negative Indizes zählen nicht. Wenn ein Programmierer versucht, eine Reihe zu verursachen, die größer ist, als die Zahlart gewährt, können bedeutende Gedächtnisstörungen auftreten, weil Zahlüberlauf einen negativen Index ergeben. Dieses ist in den Sprachen, die nicht ausdrückliche Grenzen haben auf Reihen, zu überprüfen, wie C++ besonders gefährlich.

Wenn Zahlüberlauf auftritt, bezog Arten von Überlauf wie Pufferüberlauf, häufen Überlauf, und Stapelpufferüberlauf kann auftreten. In allen diese Fälle, fungiert der Zahlüberlauf, um Zweikanalgeräte mit mehr Daten, als zu überwältigen jene Strukturen möglicherweise halten können. Dieser Überlauf, in den einfachen Programmen, nicht häufig tut viel mehr als verursachen unzulässiges gelesen, oder unzulässig Störung schreiben. Handhabung dieses Probleme durch Häcker kann Gedächtnisstörungen jedoch ausführen, die ernstere Probleme verursachen können.

In den meisten einfachen Programmen ist Zahlüberlauf nicht ein Hauptschwierigkeit. Die Begrenzungen auf die Zahlart sind genug genug groß, dass das Sammelproblem nicht Spiel erbt, es sei denn viele Daten sofort bearbeitet. In einigen Fällen kann Überlauf, wie im Falle des Erhöhens der Kostenzähler abgeschwächt werden, indem man eine größere Datenart mit einer grösseren Strecke verwendet. Die größere Datenart könnte, in der Theorie, die selben schließlich antreffen Sammelproblem, aber, wie Datenart Strecken größer erhalten, erhalten die Wahrscheinlichkeiten des Handelns also kleiner. Jede Strecke der Zahldatenart ist mindestens zweimal die Größe vom folgenden kleinsten, so dort ist reichlicher Raum für zusätzliche Daten.