技术标签:大整数,NET,精确运算系统,数据处理,指数运算,幂运算
产业分类:经济分类:科学研究、技术服务和地质勘查业
成果所属人:海南大学技术成熟度:小试阶段
是否指派:否计划转让金额:面议
合作方式:联系人:牛老师
联系电话:联系邮箱:niujj@ige-live.com
中图分类:O12
学科分类:110.99
成果类别:基础理论
成果水平:未评价
研究起止时间:2010-01~2012-01
评价形式:验收
(1)分析Knuth 在《The Art of Computer Programming,Volume 2:Seminumerical Algorithms》提出的经典数据处理算法,提出基于长基的大整数除法改进算法,将传统的Knuth算法的试商区间长度小于b/v1<=2(b为长整数的基=10^9,v1为除数标准化后分组的最高数“位”,不大于b/2),一次试商成功率平均低于50%,提高为改进算法的试商区间长度小于3/b、一次试商成功率达到(1-3/b)=99.9999997%,以极高的概率减少了普通四则运算量和大整数的乘、减和判断运算,提高除法运算速度,经验算,结论成立,相关结果见EI收录论文《Improvement of the Knuth Division about Big Integer Based on the long radix(基于长基的大整数Knuth除法优化)》。 (2)充分利用C#的运算符重载功能开发大整数类,使大整数也能象普通整数那样具备+、-、х、÷等运算符计算功能以及大整数与普通整数混合运算符计算功能,在大整数类的设计中,严格遵守.NET Framework3.0 的公共语言规范CLS,使开发完成的大整数类具备完整的跨语言调用功能,即以C#编写的大整数类,可为VB.NET、VC++.NET、C#等.NET平台的任何语言无障碍地调用,极大地提高了大整数类在.NET平台的灵活应用程度。相关结果见项目研究论文《基于.NET的大整数类设计与实现》。 (3)完善了大整数类运算能力,在原有的四则运算能力的基础上,新增了大整数的指数运算、幂运算、求最大公因子求解、求最小公倍数、多项式计算、Cipher运算、RSA运算等能力,并利用该大整数类开发出易于操作和使用的大整数运算系统V1.0;(4)为了扩大项目研究的大整数类的应用效果,提出运用面向对象的继承技术开发大数类BigDecimal的初步设想,相关结果见项目研究论文《基于大整数的BigDecimal类的实现》。 “大整数”精确运算在超大整数的计算验证方面、密码学实践方面以及微观模拟(如生物信息、基因工程、数量遗传)方面的应用前景广泛,而且随着计算机技术的发展,对大整数处理的位数和速度要求越来越高。比如,目前实际应用的加密系统,大整数已达到1024比特(308位十进制整数)甚至2048比特(617位的十进制整数)要求。 目前最流行的两大软件开发平台分别是java和.NET,java为开发者提高了“大整数类”,而.NET平台则是空白,大整数四则运算的研究论文在网络上并不少见,但系统性的研究和基于.NET平台的大整数类的开发在国内未有发现,本项目研究的成果之一基于.NET平台的大整数类BigInteger为国内首创。