高精度计算

✍ dations ◷ 2025-11-26 01:36:51 #高精度计算

高精度计算是一种程序设计的算法。由于中央处理器的字长限制,如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++:

相关

  • 更多这是各种元素的电离能的列表,单位为kJ·mol−1。
  • 西班牙国家男子篮球队西班牙国家男子篮球队是一支代表西班牙参加国际篮球赛事的球队。目前国际男子篮球排名为第二名。
  • 晶须晶须是出现在电子元件中的一种现象,是指金属中长出类似毛发或是须状的金属。锡须在二十世纪初真空管时期就有相关纪录,当时在制造时用纯锡或是几近纯锡的合金作为焊料,而在有焊
  • 蒸汽机蒸汽机是一个能够将水蒸汽中的动能转换为功的热机,由于其中的燃烧过程在热机外部进行,属于热机中的外燃机。泵、火车头和轮船曾使用蒸汽机驱动。蒸汽机在工业革命中起了基本的
  • 县市管河川县市管河川又称县 (市) 管河川,指中华民国经济部水利署依据《河川管理办法》所公告之各县市政府管辖之水系。台湾共有92条水系属于县市管河川:
  • 谢苗·格里高利耶维奇·根金谢苗·格里高利耶维奇·根金(俄语:Семён Григо́рьевич Ге́ндин,1902年-1939年)苏联军事情报机关的领导人。1918年加入红军,参与俄国内战。1921年加入契卡
  • 陈克攻陈克攻(1922年-),男,广东文昌(今属海南)人,中华人民共和国政治人物,曾任海南省政协副主席,第七届全国政协委员。
  • 2013-2014年南太平洋热带气旋季2013-14年南太平洋热带气旋季,泛指在2013年7月至2014年6月内的任何时间,于南太平洋所产生的热带气旋。大部分于南太平洋的热带气旋通常都会于11月至4月期间形成。本条目的范围
  • 国防杰出服役奖章国防杰出服役勋章(Defense Distinguished Service Medal)是一项美军跨军种通用勋奖,由时任美国总统的理查德·尼克松于1970年7月9日设立,用于表彰在美国国家安全和国防领域杰出
  • 开拓三神开拓三神(かいたくさんじん)是大国魂命、大己贵命、少彦名命等三位神祇的合称,祂们是日本神话中代表国土经营的守护神。大国魂命别名国魂神,代表国土的经营与支配;大己贵命拥有大国主神、大物主神、大穴牟迟神等别名;少彦名命别名须久那美迦微、少日子根等。《古事记》与《日本书纪》皆记载大己贵命与少彦名命在天孙降临之前建国并经营国土。因该三神具有国土开拓、经营的性格,所以在日本的新领土—北海道、桦太的神社成为重要的祭神。主要的祭祀神社有札幌神社(即北海道神宫)、台湾神社(台湾神宫,已废)、桦太神社(已废)。