Math.FusedMultiplyAdd(Double, Double, Double) Metoda

Definicja

Zwraca (x * y) + z, zaokrąglone jako jedna operacja Trzyelementowy.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

Parametry

x
Double

Liczba, która ma zostać pomnożona przez y.The number to be multiplied with y.

y
Double

Liczba, która ma zostać pomnożona przez x.The number to be multiplied with x.

z
Double

Liczba, która ma zostać dodana do wyniku x pomnożona przez y.The number to be added to the result of x multiplied by y.

Zwraca

(x * y) + z, zaokrąglone jako jedna operacja Trzyelementowy.(x * y) + z, rounded as one ternary operation.

Uwagi

To obliczanie (x * y) tak, jakby była nieskończona precyzja, dodaje z do tego wyniku tak jak w przypadku nieskończoności precyzji, a wreszcie zaokrągla do najbliższej wartości, którą można przedstawić.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.

Różni się to od odrzucanej sekwencji, która może obliczyć (x * y) jak w przypadku nieskończoności dokładności, zaokrąglić wynik do najbliższej reprezentacji wartości, dodać z do wyniku zaokrąglonego, tak jakby była nieskończona precyzja, a następnie zaokrąglić do najbliższej wartości z możliwością zaprezentowania.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.

Dotyczy