System.Set8087CW

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

Delphi

procedure Set8087CW(NewCW: Word);

C++

extern DELPHI_PACKAGE void __fastcall Set8087CW(Word NewCW);

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
procedure
function
public
System.pas
System.hpp
System System

Beschreibung

Legt das FPU-Steuerwort fest.

32-Bit-Windows: Mit diesem Steuerwort wird die Genauigkeit von Gleitkommaberechnungen und der Rundungsmodus gesteuert, sowie ob bestimmte Gleitkommaoperationen Exceptions auslösen. Einzelheiten dazu finden Sie unter Intel processors' documentation.

Mit dieser Routine können Sie direkt auf das Steuerwort des arithmetischen Coprozessors zugreifen. Änderungen des 8087CW-Wertes wirken sich auf die Berechnungen in der gesamten Anwendung aus. Setzen Sie den 8087CW-Wert zurück, um dies zu vermeiden. Ein Beispiel dazu finden Sie in der Liste mit den Codebeispielen am Ende dieser Seite.

Hinweis: Zum Ändern des Exception-Modus, des Rundungsmodus und der Genauigkeit für Gleitkommazahlen sollten Sie System.Math.SetExceptionMask, System.Math.SetRoundMode und System.Math.SetPrecisionMode anstelle von Set8087CW oder System.SetMXCSR verwenden.

Beim Rendern von 3D-Grafiken mit OpenGL wird aus Performance-Gründen die Deaktivierung aller Gleitkomma-Exceptions empfohlen. Rufen Sie dazu vor dem Aufruf einer OpenGL-Funktion im OnCreate-Ereignis des Hauptformulars Set8087CW(0x133f) auf.

64-Bit-Windows: Mit diesem Steuerwort werden keine Gleitkommaoperationen gesteuert, weil im 64-Bit-Modus für Gleitkommawerte das SSE-Register anstatt der FPU (Floating-Point Unit, Gleitkommaeinheit) verwendet wird. Die FPU ist aber im 64-Bit-Modus weiterhin vorhanden, daher setzt SGet8087CW den Wert des Steuerwortes wie im 32-Bit-Modus.

iOS/Simulator: Diese Funktion ändert die Exception für die Masken-Bits des X87-Steuerworts nicht. Die maskierten Bits für diese Exception haben immer den Wert 1.

Siehe auch

Codebeispiele