高精度计算

✍ dations ◷ 2025-09-18 20:17:53 #高精度计算

高精度计算是一种程序设计的算法。由于中央处理器的字长限制,如32位CPU中一个整数最大只能取值4,294,967,295(=232-1)。因此在进行更大范围的数值计算中,往往要采取模拟手段。通常通过分离字符的方法通过数字数组进行输入、通过数组倒序输出、通过模拟竖式计算进行计算。一般而言,主要模拟的是按位运算,可以用不同的进位制达成不同的目的。

有许多程序库支持高精度计算,最著名的是GNU多重精度运算库。另外,Java,Python和Pascal也有本地的高精度运算支持。

高精度计算的一个常见应用是公开密钥加密,这些算法经常对长度上百位的整数进行运算。高精度计算的另一个应用是在需要没有人为限制位数和没有算术溢出的情况下使用。在检查固定精度计算的结果以及确定公式中系数的精确值或近似值时,高精度计算也很有用。比如,在高斯求积中,我们需要确定 1 / 3 {displaystyle {sqrt {1/3}}} 的值。

高精度加法是信息学的一种重要算法。这种算法使用多个存储单位进行计算,因此它的计算范围超过一般使用一个存储单位的算法。也是一些信息学竞赛的常考题目。

以358934760892734899+38960302975237462为例:

1、计算结果的位数

358934760892734899共18位

38960302975237462 共17位

故结果不会超过19位。

2、将要计算的数字分割成多段,按照顺序排列(这里以0-32767作为每一存储单位存储的数的限制):

(为提高空间利用效率,可以一个存储单位存储多位数。)

3、将两数相加。

4、输出结果。

从高位到低位依次输出。除最高位以外,其他低位上不足4位的要在前面补上0。

pascal:

var  a,b,c:array of integer;   n:string;   lena,lenb,lenc,i,x:integer; begin  readln(n);   lena:=length(n);   for i:=1 to lena do a:=ord(n)-ord('0');   readln(n);   lenb:=length(n);   for i:=1 to lenb do b:=ord(n)-ord('0');   i:=1; x:=0;   while (i<=lena) or(i<=lenb) do  begin    c:=a+b+x;     x := c div 10;      c := c mod 10;      i := i + 1;   end;   if x>0 then  begin    lenc:=i;     c:=x;   end  else lenc:=i-1;   for i:=lenc downto 1 do write(c); end.

c++:

相关

  • 家族性自主神经失调综合征自主神经紊乱,又称自律神经失调 Dysautonomia,就是指自主神经系统的功能异常或者障碍。自主神经系统是指控制人类身体那些自主行为的神经系统。这些保证人类生存的自主行为包
  • 莫特森本·莫特森(Ben Roy Mottelson,1926年7月9日芝加哥),美国-丹麦物理学家,1975年,因为发现原子核中集体运动和粒子运动之间的联系,并且根据这种联系发展了有关原子核结构的理论,与奥格
  • 耶鲁世界研究员耶鲁世界研究员(英语:Yale World Fellows)是耶鲁大学的一个国际奖学金项目,旨在培养那些在其职业、学科或地区有卓越成就的在职领导人。 每年15到20个参与者,被称为世界研究员(Wor
  • 周廷潮耶鲁大学 约翰霍普金斯大学 康奈尔大学斯隆凯特琳癌症中心周廷潮(英语:Ting-Chao Chou,1938年9月9日-)美籍华裔理论生物学家,癌症药物学家。耶鲁大学博士,曾任康奈尔大学教授及纽约
  • 蔡运蔡运,江西行省南安府南康县(今江西省南康县)人,明朝政治人物。蔡运任四川参政,后被罢免返乡。之后再次被启用,任宾州知州。永乐年间,因论奸党被诛杀。
  • 函馆圣约翰教堂函馆圣约翰教堂(日语:函館聖ヨハネ教会)是位于日本北海道函馆市的一座日本圣公会北海道教区的教堂。函馆圣约翰教堂以其棕色的屋顶和外墙的十字架为特征,屋顶也是十字架形。自函
  • 陆虎陆虎(1986年4月24日-),河南周口人,汉族,中国大陆歌手,毕业于湖南大众传媒职业技术学院。2007年获得快乐男声长沙赛区冠军、全国第13名,赛后转入幕后发展,为黄雅莉、张杰等歌手写歌,担
  • 凯文怎么了《凯文怎么了》(英语:)是一部改编自美国作家兰诺·丝薇佛(Lionel Shriver)2003年的同名小说()的英美电影。由Lynne Ramsay执导。由2005年开始制作,它面对了长期的制作和资金问题,直到
  • 刘利华刘利华(1957年12月-),中华人民共和国政府官员。1976年10月加入中国共产党。北京邮电学院(现北京邮电大学)毕业,工学硕士,高级工程师。历任北京邮电学院教师;国务院办公厅处长;深圳市人民政府副秘书长;国家无线电管理委员会办公室负责人、党委书记,信息产业部无线电管理局局长、部办公厅主任,工业和信息化部办公厅主任等职。2011年2月升任工业和信息化部副部长。2018年1月,当选第十三届全国政协委员。
  • 陆守曾陆守曾(1928年-),曾用名陆稼如。江苏苏州人,中国医学统计学家,医学教育家。1953年毕业于原中央大学医学院。历任白求恩医科大学讲师、副教授。1983年调南通医学院任副教授、教授,兼任航海医学研究所所长、预防医学系主任等职。1980年以来受聘为中国中医研究院客座研究员、《中国卫生统计》杂志编委。为八届全国人大代表、六届江苏省政协委员、七届南通市政协副主席,中国致公党第八、九、十届中央 委员。1991年起获国务院批准的政府特殊津贴。1980年代在南通大学设立“陆氏奖学金”以奖励优秀师生。