首页
社区
课程
招聘
[原创]大数累乘运算
2021-4-17 20:17 6064

[原创]大数累乘运算

2021-4-17 20:17
6064

思路:模拟手工乘法竖式

一、步骤:

• 1.准备一个数组,顺序存放每位数值元素;

• 2.数组中的每个元素分别*第二个乘数;

• 3.产生进位:进位值 == 本轮积/10;保留值 == 本轮积%10。

二、发展方向:上例问题是大数非大数,会逐步发展为大数大数。

优化思路:合并数值元素以减少乘法次数(例子说明)。

• 情况1:

•需将两个乘数的位权比值逐一两两相乘,就需要64次乘法运算:
• 乘数1:1千万、2百万、3十万、4万、5千、6百、7十、8
• 乘数2:8千万、7百万、6十万、5万、4千、3百、2十、1

• 情况2:

• 同样将两个乘数的位权比值逐一两两相乘,仅需4次乘法运算:
• 乘数1:1234万、5678
• 乘数2:8765万、4321

三、扩充知识点

• 乘法遇到以下情况可优化:①见2移位;②见(25)直接低位补0,因为n2*5=n0。


[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

最后于 2021-4-17 20:18 被633编辑 ,原因:
收藏
点赞5
打赏
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回