如何获得64位乘法的整个128位结果

时间:2014-09-02 02:01:17

标签: c int

我有两个无符号长long整数(64位整数),我正在相乘。然而,(这是有道理的)没有内置的128位数据类型(我当然不够丰富,不能提供128位处理器)所以我只回到结果的低64位。有没有办法得到其余的(也许它存储在另一个寄存器中)?

我不怕嵌入式组装。 因为这可能很重要:有时当我尝试使用%rax寄存器时,gcc抱怨说没有这样的寄存器。 GAS是否使用了我不知道的不同语法?

1 个答案:

答案 0 :(得分:-1)

我认为你应该看看https://gmplib.org,它允许对可能无限的数字进行计算。

或者您可以重新实现乘法算法,这不应该花费几个小时:p