Zitat von
Hawkeye219:
Hallo,
einige Bits im
FPU control word sind reserviert und können nicht geändert werden. Offenbar liefert die FPU beim Auslesen des Wortes zumindest für Bit 6 immer den Zustand "gesetzt".
Gruß Hawkeye
Vielen Dank!
Ich habe jetzt eine Funktion geschrieben, die nur die Bits umsetzt, die umgesetzt werden sollen, und können:
Delphi-Quellcode:
function MyCWCheck(cw: word): word;
begin
result := cw;
// Errormessages abschalten
result := (result or (1 shl 0));
result := (result or (1 shl 1));
result := (result or (1 shl 2));
result := (result or (1 shl 3));
result := (result or (1 shl 4));
result := (result or (1 shl 5));
// Präzision auf Extended (64 Bit) stellen
result := (result or (1 shl 8));
result := (result or (1 shl 9));
// "Normal" runden
result := (result and not (1 shl 10));
result := (result and not (1 shl 11));
end;
Damit geht´s.