Aracılığıyla paylaş


_mul128

Microsoft'a Özgü

İlk iki bağımsız değişken olarak geçirilen iki 64 bit tamsayıyı çarpar ve ürünün en yüksek 64 bitini işaret ettiği 64 bitlik tamsayıya HighProduct yerleştirir ve ürünün düşük 64 bitini döndürür.

Sözdizimi

__int64 _mul128(
   __int64 Multiplier,
   __int64 Multiplicand,
   __int64 *HighProduct
);

Parametreler

Çarpanı
[in] Çarpmak için ilk 64 bit tamsayı.

Multiplicand
[in] Çarpmak için ikinci 64 bit tamsayı.

HighProduct
[out] Ürünün yüksek 64 biti.

Dönüş değeri

Ürünün düşük 64 biti.

Gereksinimler

Içsel Mimari
_mul128 x64

intrin.h üst bilgi dosyası<>

Örnek

// mul128.c
// processor: x64
#include <stdio.h>
#include <intrin.h>

#pragma intrinsic(_mul128)

int main()
{
    __int64 a = 0x0fffffffffffffffI64;
    __int64 b = 0xf0000000I64;
    __int64 c, d;

    d = _mul128(a, b, &c);

    printf_s("%#I64x * %#I64x = %#I64x%I64x\n", a, b, c, d);
}
0xfffffffffffffff * 0xf0000000 = 0xeffffffffffffff10000000

END Microsoft'a Özgü

Ayrıca bkz.

Derleyici iç bilgileri