Hardware-Ausnahmen

Die meisten Ausnahmen standardmäßig vom Betriebssystem erkannt werden, sind Hardware-definierte Ausnahmen.Einige erkennt Windows Software-Ausnahmen auf niedriger Ebene, doch diese sind normalerweise vom Betriebssystem behandelt bestes.

Fenster ordnet die Hardwarefehler von verschiedenen Prozessoren zu den Ausnahmecode in diesem Abschnitt.In manchen Fällen generiert ein Prozessor möglicherweise nur eine Teilmenge dieser Ausnahmen.Fenster verarbeitet Informationen über die Ausnahme und der entsprechende Probleme Ausnahmecode vor.

Die Hardware Ausnahmen, die von Windows erkannt werden, werden in der folgenden Tabelle zusammengefasst:

Ausnahmecode

Ursache der Ausnahme.

STATUS_ACCESS_VIOLATION

Lesen oder Schreiben in eine Speicheradresse nicht möglich.

STATUS_BREAKPOINT

Begegnung eines Hardware-definierten Haltepunkte. nur vom Debugger verwendet.

STATUS_DATATYPE_MISALIGNMENT

Lesen oder Schreiben auf die Daten, die an einer Adresse nicht ordnungsgemäß ausgerichtet ist. Beispielsweise müssen 16-Bit-Entitäten an 2-Byte-Grenzen ausgerichtet sein.(Nicht zutreffend). 80x86 Intel Prozessoren zu

STATUS_FLOAT_DIVIDE_BY_ZERO

Dividierender Gleitkommatyp mit 0.0.

STATUS_FLOAT_OVERFLOW

Maximalen positiven Exponenten eines Gleitkommatyps überschreiten.

STATUS_FLOAT_UNDERFLOW

Größe des niedrigsten negativen Exponenten eines Gleitkommatyps überschreiten.

STATUS_FLOATING_RESEVERED_OPERAND

Verwenden eines reservierten Gleitkommaformats (Ungültige Verwendung von Format).

STATUS_ILLEGAL_INSTRUCTION

Versuch, einen Befehlscode definiert nicht vom Prozessor auszuführen.

STATUS_PRIVILEGED_INSTRUCTION

Eine Anweisung kann nicht im aktuellen Computer Modus.

STATUS_INTEGER_DIVIDE_BY_ZERO

Ein ganzzahliger Typ durch 0 geteilt.

STATUS_INTEGER_OVERFLOW

Versuchen Sie einen Vorgang, der den Bereich der ganzen Zahl übersteigt.

STATUS_SINGLE_STEP

Eine Anweisung im einschrittigen Modus ausführen. nur vom Debugger verwendet.

Viele der Ausnahmen, die in der vorherigen Tabelle sind durch Debugger, dem Betriebssystem oder anderen Code behandelt werden soll auf niedriger Ebene.Mit Ausnahme von ganze Zahl und Gleitkommafehlern sollte der Code diese Fehler nicht verarbeiten.Daher sollten Sie den Filter für die Ausnahmebehandlung normalerweise verwenden, um Ausnahmen zu ignorieren (werten Sie bis 0).Andernfalls werden möglicherweise nicht auf niedrigerer Ebene entsprechend reagieren.Sie können geeignete Vorkehrungen gegen den möglichen Auswirkungen dieser Fehler auf niedriger Ebene gelten jedoch durch Schreibenbeendigungshandler.

Siehe auch

Referenz

Schreiben eines Ausnahmehandlers

Strukturierte Ausnahmebehandlung (C++)