目前我面临一个问题,当我将两个数字相乘时,它会从只能包含最大数字的最大范围
5e20 * 5e20 = 2.5E41
溢出。所以我不能将两个非常大的数字相乘,因此我的精度会降低。我想要精确到小数位。如果我也执行数字除法,我得到的只是因为我的系统不包含浮点,所以浮点部分被忽略。为了达到精度,我通过乘以得到 16 位小数精度来扩大我的红利。我还尝试使用科学记数法来解决我的精度问题,以便我可以通过书写进行乘法和除法,但正因为如此,我的乘法保持格式不变,而我的除法保持不变128 bit
39 digits
16
10 / 3 = 3.3333333
3
1e16
2.5/4 or 2.5x4
25x10^-1
4x10^0
scale-down
scaled-up
形式
2.5/4 = 6.25E16 * 10^-1 (scaled up)
2.5*4 = 100 * 10^-1 (scaled down)
我怎么解决这个问题?我应该使用什么方法?