Самый точный способ выполнения комбинированной операции умножения и деления в 64-битной среде?

Каков наиболее точный способ выполнить операцию умножения и деления для 64-битных целых чисел, которая работает как в 32-битных, так и в 64-битных программах (в Visual C ++)? (В случае переполнения мне нужен результат mod 2 64 .)

(Я ищу что-то вроде MulDiv64 , за исключением того, что этот использует встроенную сборку, которая работает только в 32-битных программах.)

Очевидно, приведение к double и обратно возможно, но мне интересно, есть ли более точный способ, который не слишком сложен . (т.е. я не ищу здесь арифметические библиотеки произвольной точности!)

22
задан Mehrdad 4 January 2012 в 20:05
поделиться