Math.FusedMultiplyAdd(Double, Double, Double) Methode

Definition

Gibt (x * y) + z, gerundet als ternärer Vorgang, zurück.Returns (x * y) + z, rounded as one ternary operation.

public:
 static double FusedMultiplyAdd(double x, double y, double z);
public static double FusedMultiplyAdd (double x, double y, double z);
static member FusedMultiplyAdd : double * double * double -> double
Public Shared Function FusedMultiplyAdd (x As Double, y As Double, z As Double) As Double

Parameter

x
Double

Die Zahl, die mit y multipliziert werden soll.The number to be multiplied with y.

y
Double

Die Zahl, die mit x multipliziert werden soll.The number to be multiplied with x.

z
Double

Die Zahl, die zum Ergebnis von x multipliziert mit y addiert werden soll.The number to be added to the result of x multiplied by y.

Gibt zurück

Double

(x * y) + z, gerundet als ternärer Vorgang.(x * y) + z, rounded as one ternary operation.

Hinweise

Dadurch wird (x * y) die unbegrenzte Genauigkeit berechnet, was zu diesem Ergebnis addiert, wie bei einer z unendlichen Genauigkeit, und schließlich wird auf den nächstgelegenen darstellbaren Wert gerundet.This computes (x * y) as if to infinite precision, adds z to that result as if to infinite precision, and finally rounds to the nearest representable value.

Dies unterscheidet sich von der nicht-Fused-Sequenz, die so berechnet, als wäre die (x * y) unbegrenzte Genauigkeit, das Ergebnis wird auf den nächstgelegenen darstellbaren Wert gerundet, das z abgerundete Ergebnis wird als unbegrenzte Genauigkeit und schließlich auf den nächsten darstellbaren Wert gerundet.This differs from the non-fused sequence which would compute (x * y) as if to infinite precision, round the result to the nearest representable value, add z to the rounded result as if to infinite precision, and finally round to the nearest representable value.

Gilt für: