高精度计算

✍ dations ◷ 2025-12-05 19:29:07 #高精度计算

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

相关

  • 朱邦芬朱邦芬(1948年-),生于上海,原籍江苏宜兴,汉族,中国物理学家,中国科学院数学物理学部院士,研究领域为固体物理、半导体物理、凝聚体物理学。他和导师著名物理学家黄昆先生一起创建凝聚
  • 萨克森的玛利亚·约瑟珐公主玛利亚·约瑟珐(德语:Maria Josepha,1867年5月31日-1944年5月28日)是奥地利帝国大公夫人和萨克森王国公主。她是奥匈帝国末代皇帝卡尔一世的母亲。玛利亚·约瑟珐是萨克森国王格
  • 马库斯·勒特雷尔海豹部队伊拉克战争阿富汗战争马库斯·勒特雷尔(英语:Marcus Luttrell,1975年11月7日-),前美国海军海豹部队队员,因为参与2005年“孤独的生还者”对抗塔利班而获发海军十字勋章和紫
  • 元城县元城县的西汉置设的一个县,属魏郡,以战国魏公子元食邑而得名,治所在今大名县城东。其后屡有迁移。三国魏黄初二年(221年)改属阳平郡。北齐天保七年(556年)省入贵乡县。隋开皇六年(58
  • 45号地区《45号地区》(俄语:В квадрате 45)是1955年上映的一部苏联故事片,主要讲述了一支森林消防跳伞队协助反间谍机关抓获一伙外国派遣特务的故事。电影导演是尤里·维申斯基
  • 麻疯树属约170个,见文中。麻疯树属(学名:)是大戟科下大戟属被子植物的一个属。它包含约170多种植物,为多肉植物、灌木和树木(有些为落叶植物,如桐油树)。该属分布于热带和亚热带地区。其中大
  • 乔舒亚·瑞恩·戈德堡乔舒亚·瑞恩·戈德堡(英语:Joshua Ryne Goldberg,1995年5月14日-)是一名美国恐怖分子,因试图在九一一袭击事件14周年之际制造爆炸而被定罪,同时他还伪装成一名附属于ISIS组织的伊
  • 佛印佛印可以是下列人物:
  • 广东紫珠广东紫珠(学名:)为马鞭草科紫珠属的植物,为中国的特有植物。分布在中国大陆的贵州、湖南、江西、广西、广东、福建、云南、湖北、浙江等地,生长于海拔300米至1,600米的地区,常生长
  • 霍尔迪·加利霍尔迪·加利(Jordi Galí,1961年1月4日-),西班牙宏观经济学家,新兴凯恩斯学派的代表人物之一。他现在是国际经济学研究中心(Centre de Recerca en Economia Internacional)主席。1961年生于西班牙巴塞罗那,1989年于麻省理工学院取得博士学位后,他曾于哥伦比亚大学和纽约大学任教。