作为我的个人项目,我正在实现一个任意精度数字类型,用于我的宠物项目。
我已经了解到所有流行、经过测试和稳健的库,我想作为自我提高教育项目而进行解决方案的研究。
我正在研究这个领域,并试图找出是否有某种方法可以在实际进行计算之前“大致”预测操作是否会导致溢出。我不太关心误判。
我希望能够使用适当的最小空间进行计算。如果计算结果仍在其本机范围内,我将保持在该范围内。
例如:如果每个64位整数足够大,则将两个64位整数相乘将导致溢出。我想检测到这一点,并仅在结果“可能”超过64位分辨率时将数字升级为我的数字类型。在此实验中,我将使用“有符号”数字。
最合理、高效的检测溢出/下溢的方法是什么?
我已经了解到所有流行、经过测试和稳健的库,我想作为自我提高教育项目而进行解决方案的研究。
我正在研究这个领域,并试图找出是否有某种方法可以在实际进行计算之前“大致”预测操作是否会导致溢出。我不太关心误判。
我希望能够使用适当的最小空间进行计算。如果计算结果仍在其本机范围内,我将保持在该范围内。
例如:如果每个64位整数足够大,则将两个64位整数相乘将导致溢出。我想检测到这一点,并仅在结果“可能”超过64位分辨率时将数字升级为我的数字类型。在此实验中,我将使用“有符号”数字。
最合理、高效的检测溢出/下溢的方法是什么?