找回密码
 欢迎注册
楼主: 无心人

[讨论] B计划之长乘法讨论

[复制链接]
发表于 2008-4-19 08:52:37 | 显示全部楼层
原帖由 无心人 于 2008-4-18 14:54 发表
还有就是空间占用

恐怕将来还存在移植问题
10进制移植到64位平台是很困难的
面临改动进制的可能
二进制很可能就改动几个底层汇编就可以了


用10进制移植到64位平台同二进制是一样的,
把一些宏定义作相应修改就可以了(在32位平台下开发时就应考虑到未来的移植问题)。

另外,两者空间占用也非常接近。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2008-4-19 16:13:19 | 显示全部楼层
$10^9 // 2^32 = 0.23283064365386962890625$
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2008-4-19 16:31:00 | 显示全部楼层
同一个大数 $N$,

若用 $10^9$ 进制表示,需要 $|__{|~log_10(N)~|+8}/{9}__|xx4$ 个字节,

若用 $2^32$ 进制表示,需要 $|__{|~log_2(N)~|+31}/{32}__|xx4$ 个字节,

两者之比约为:${log_10(N)}/{9}:{log_2(N)}/{32} = 32/9log_10(2) ~~ 1.0703$

所以空间耗用几乎相等。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2008-4-19 16:36:31 | 显示全部楼层


如果那么算应该这么写
$\frac{32}{9log_2 10} = 1.0703288734719331385377382923538$
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2008-4-19 16:37:54 | 显示全部楼层


如果考虑硬件限制,就存在极大的区别了

比如硬件只能存取4GB内存
那差别就是绝对的了
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2008-4-19 16:54:48 | 显示全部楼层
大数计算可计算的能力通常是指:它可参与计算的数的最大位数(或bit数),
即与可表达的最大数的对数成正比,而不是它本身!
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2008-4-19 16:56:43 | 显示全部楼层
我的意思是说,如果内存受限
那采取10进制就存在最大可计算数字远小于二进制的情况
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2008-4-20 10:32:56 | 显示全部楼层
 没有一个人或者一个应用程序需要使用一个数,这个数的占用的字节数达到内存的容量。实际应用中,一般需要在内存中同时保存几个数,如果内存不够,就仿造apfloat,将大数保存到磁盘,在运算时,将其一部分载入内存。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2008-4-20 14:08:16 | 显示全部楼层


计算圆周率
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-4-28 17:34 , Processed in 0.048371 second(s), 14 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表