System.MulDivInt64
Delphi
function MulDivInt64(AValue, AMul, ADiv: Int64; [out Remainder: Int64]): Int64; overload;
function MulDivInt64(AValue, AMul, ADiv: Int64; [out Remainder: Int64]): Int64; overload;
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
function | public | System.pas | System | System |
Beschreibung
Gibt den Wert dieses Ausdrucks zurück: Int64((Int128(AValue) * Int128(AMul)) div Int128(ADiv))
.
Int128
ist ein Pseudotyp, der einen 128-Bit-Integerwert mit Vorzeichen darstellt.- Wenn Sie den optionalen Parameter
Remainder
angeben, speichert dieser Parameter den Ergebniswert des folgenden Ausdrucks:Int64((Int128(AValue) * Int128(AMul)) mod Int128(ADiv))
.
Wenn A * B
im Ausdruck A * B div C
überläuft, ist das Ergebnis ungültig. Diese Funktion berechnet die Werte in 28-Bit-Integerwerten als Workaround für den potenziellen Überlauf.