我们正在努力恢复Google Play商店上的Unionpedia应用程序
传出传入
🌟我们简化了设计以优化导航!
Instagram Facebook X LinkedIn

GNU多重精度运算库

指数 GNU多重精度运算库

GNU多重精度运算库(GNU Multiple Precision Arithmetic Library,简称GMP或gmpal)是一个开源的任意精度运算库,支持正负数的整数、有理数、浮点数。它没有任何精度限制,只受限于可用内存。GMP有很多函数,它们都有一个规则的接口。它是C语言写成的,但用为其他很多语言做包装,包括Ada,C++,C#,OCaml,Perl,PHP,python 和 R。GMP主要运用于加密应用和研究、互联网安全应用、计算机代数系统和计算代数研究。GMP的目标是成为最快的大数运算库,GMP是GNU项目的一部分,它在GNU宽通用公共许可证下发表。GMP在许多计算机辅助代数系统中用于整数运算,如Mathematica和Maple。GMP需要使用GCC(GNU编译器套装)编译。.

目录

  1. 30 关系: Ada开放源代码BSD许可证CC sharpC++C♯C语言ChCommon Lisp計算機代數系統跨平台GCCGNUGNU宽通用公共许可证HaskellMapleMathematicaOCamlPerlPHPPHP许可证PythonRRuby有理数浮点数数学软件整数.NET框架

  2. C函式庫
  3. 使用LGPL许可证的软件
  4. 數值函式庫
  5. 組合語言軟體
  6. 計算機算術

Ada

Ada,是一种程序设计语言。它源于美国军方的一个计划,旨在整合美军系统中运行着上百种不同的程序设计语言编写的程序,並提高除錯能力與效率,由Pascal及其他語言擴展而成,比較接近自然語言和數學表達式,並用「Ada」命名以紀念-zh-cn:埃达·洛夫莱斯;zh-tw:愛達·勒芙蕾絲;zh-hk:愛達·勒芙蕾絲;zh-sg:埃达·洛夫莱斯;-(Ada Lovelace)。.

查看 GNU多重精度运算库和Ada

开放源代码

開放原始碼(Open Source)描述了一种在产品的出品和开发中提供最终源材料的做法。在這個詞廣泛使用前,開發者和生產者使用很多詞去描述這個概念;開放源代碼在互聯網上獲得廣泛使用,參加者需要大量更新電腦原始碼。開放源代碼使得生產模組、通訊管道、互動社群獲得改善。隨後,一個新著作權、軟體授權條款、域名和消費者提供建立的,一個新詞開源軟體誕生。 開源模型概念包括同時間不同時程和方法來生產,相對而言,更加集中式的軟体設計模型,例如典型的商業軟体公司。一個開源軟体開發的主要原則和慣例是易貨貿易和合作的同儕生產,經由免費公開的最終產品、原始資訊、藍圖和--。這逐漸應用在其它領域,例如生物技術。.

查看 GNU多重精度运算库和开放源代码

BSD许可证

BSD 授權條款(Berkeley Software Distribution license),是自由軟體中使用最廣泛的授權條款之一。BSD 就是遵照這個許可證來發布,也因此而得名 BSD 授權條款。 BSD 套件最初所有者是加州大學的董事會,這是由於 BSD 源自加州大學伯克利分校。BSD 開始後,BSD 授權條款得以修正,使得以後許多 BSD 變種,都采用類似風格的條款。 跟其他條款相比,從GNU通用公共許可證(GPL)到限制重重的著作權(Copyright),BSD許可證比較寬松,甚至跟公有領域更為接近。事實上,BSD許可證被認為是copycenter(中間版權),介乎標準的copyright與GPL的copyleft之間。"Take it down to the copy center and make as many copies as you want"。可以說,GPL強迫後續版本必須一樣是自由軟體,BSD的後續版本可以選擇要繼續是BSD或其他自由軟體條款或封閉軟體等等。.

查看 GNU多重精度运算库和BSD许可证

C

C,c是拉丁字母中的第3个字母。在伊特鲁里亚语中,爆破辅音没有明显的发音,所以他们把希腊语中的Γ, γ(Gamma)来书写他们的/k/。开始的时候,罗马人同时使用它来书写/k/和/g/,后来在它的右中部加了一横杠变成G。可能在更早的时候,只有/g/,而用K表示/k/。 一些学者表示,闪族语的ג是骆驼的图形。/k/在拉丁语中发展成上腭音和软腭音音位变体,这可能是由于伊特鲁里亚语的影响。因此,今天的C有很多不同的音值:在法语和西班牙语中为:和,在意大利中的和(像英语中的CH)等等。.

查看 GNU多重精度运算库和C

C sharp

#重定向C♯.

查看 GNU多重精度运算库和C sharp

C++

C++是一種使用廣泛的计算机程序設計語言。它是一種通用程序設計語言,支援多重编程模式,例如程序化程序設計、数据抽象、面向对象程序設計、泛型程序設計和设计模式等。 比雅尼·斯特勞斯特魯普博士在贝尔实验室工作期间在20世紀80年代發明並實現了C++。起初,這種語言被稱作“C with Classes”(“包含‘類’的C語言”),作為C語言的增強版出現。随后,C++不斷增加新特性。虚函数(virtual function)、运算符重载(operator overloading)、多繼承(multiple inheritance)、标准模板库(standard template library, STL)、异常处理(exception)、运行时类型信息(Runtime type information)、命名空間(namespace)等概念逐漸納入標準。1998年,國際標準組織(ISO)頒布了C++程序設計語言的第一個國際標準ISO/IEC 14882:1998,目前最新标准为ISO/IEC 14882:2017。根據《C++編--程思想》(Thinking in C++)一書,C++與C的代码执行效率往往相差在±5%之間。 C++語言發展大概可以分為三個階段:第一階段從80年代到1995年。這一階段C++語言基本上是傳統類型上的面向对象語言,並且憑藉着接近C語言的效率,在工業界使用的開發語言中佔據了相當大份額;第二階段從1995年到2000年,這一階段由於標準模板庫(STL)和後來的Boost等程式庫的出現,泛型程序設計在C++中佔據了越來越多的比重。當然,同時由於Java、C#等語言的出現和硬體價格的大規模下降,C++受到了一定的衝擊;第三階段從2000年至今,由於以Loki、MPL(Boost)等程式庫為代表的產生式編程和模板元編程的出現,C++出現了發展歷史上又一個新的高峰,這些新技術的出現以及和原有技術的融合,使C++已經成為當今主流程序設計語言中最複雜的一員。.

查看 GNU多重精度运算库和C++

C♯

C#是微软推出的一种基于.NET框架的、面向对象的高级编程语言。C#以.NET框架类库作为基础,拥有类似Visual Basic的快速开发能力。C#由安德斯·海尔斯伯格主持开发,微软在2000年发布了这种语言,希望借助这种语言来取代Java。C#已经成为Ecma国际和国际标准组织的标准规范。.

查看 GNU多重精度运算库和C♯

C语言

C是一种通用的程式語言,广泛用于系统软件与应用软件的开发。于1969年至1973年間,為了移植與開發UNIX作業系統,由丹尼斯·里奇與肯·汤普逊,以B语言为基础,在贝尔实验室設計、开发出來。 C语言具有高效、灵活、功能丰富、表达力强和較高的可移植性等特点,在程式設計中备受青睐,成为最近25年使用最为广泛的编程语言。目前,C语言編譯器普遍存在於各種不同的操作系统中,例如Microsoft Windows、macOS、Linux、Unix等。C語言的設計影響了众多後來的程式語言,例如C++、Objective-C、Java、C#等。 二十世纪八十年代,為了避免各開發廠商用的C語言語法產生差異,由美國國家標準局為C語言訂定了一套完整的國際標準語法,稱為ANSI C,作為C語言的標準。二十世纪八十年代至今的有关程式開發工具,一般都支持符合ANSI C的語法。.

查看 GNU多重精度运算库和C语言

Ch

Ch 是一個二合拉丁字母。 Ch 表示双曲余弦函数,“cosh”的缩写,例如ch z.

查看 GNU多重精度运算库和Ch

Common Lisp

Common Lisp,縮寫為CL(不是組合邏輯的縮寫)是Lisp編程語言的一種方言,由ANSI INCITS 226-1994(R2004)(前身為ANSI X3.226-1994(R1999)),所定義的語言規範標準。Common Lisp HyperSpec是源自於ANSI Common Lisp標準的網頁超連結版本。 CL語言是為標準化和改良Maclisp而開發的後繼者。到20世紀80年代初,幾個工作群組已經在設計MacLisp各種後繼者,例如:Lisp Machine Lisp(又名 ZetaLisp),Spice Lisp,NIL和S-1 Lisp。CL是為了標準化和擴展此前眾多的MacLisp分支而開發,它本身並非具體的實作,而是對語言設立標準的規範。有數個實作符合Common Lisp規範,其中包括自由和開源軟件,以及商業化產品。CL支援了結構化、函數式和物件導向編程等範式。相对于各种嵌入在特定产品中的语言,如Emacs Lisp和AutoLISP,Common Lisp是一種用途廣泛的编程语言。不同於很多早期Lisp,Common Lisp如同Scheme,其中的變量是預設為詞法作用域的。 身為一種動態編程語言,它有助於進化和增量的軟件開發,並將其迭代編譯成高效的執行程序。這種增量開發通常是互動持續地改善,而不需中斷執行中的應用程序。它還支援在後期的分析和優化階段添加可選的型別註記與轉型,使編譯器產生更有效率的代碼。例如在硬體和實作的支援範圍內,fixnum能保存一個未封裝整數,允許比大整數或任意精度類型更高效率的運算。同樣地,在每個模組或函數的基礎上可聲明優化,指示編譯器要編譯成哪一類型的安全級別。 CL包含了支援多分派和方法組合的物件系統,縮寫為CLOS,它通常以元物件(Metaobject)協定來實現。 CL藉由標準功能進行擴展,例如Lisp宏(编译时期程序自身完成的代码重排(compile-time code rearrangement accomplished by the program itself))和阅读器宏(赋予用户自定义的語法以扩展具特殊意义的符号(extension of syntax to give special meaning to characters reserved for users for this purpose))。 CL為Maclisp和约翰·麦卡锡的原創Lisp提供了一些向後兼容性。這允許較舊的Lisp軟件移植到Common Lisp之上。.

查看 GNU多重精度运算库和Common Lisp

計算機代數系統

計算機代數系統(computer algebra system,縮寫作:CAS)是進行符號運算的軟件。這種系統的要件是數學表示式的符號運算。.

查看 GNU多重精度运算库和計算機代數系統

跨平台

跨平台泛指编程语言、软件或硬件设备可以在多种作業系統或不同硬體架構的電腦上運作。.

查看 GNU多重精度运算库和跨平台

GCC

GNU编译器套裝(GNU Compiler Collection,縮寫為GCC),指一套编程語言编译器,以GPL及LGPL許可證所發行的自由軟體,也是GNU計畫的关键部分,也是GNU工具链的主要組成部份之一。GCC(特别是其中的C语言编译器)也常被认为是跨平台编译器的事实标准。1985年由理查德·马修·斯托曼開始發展,現在由自由軟體基金會負責維護工作。 原名為GNU C語言編譯器(GNU C Compiler),因為它原本只能處理C語言。GCC在发布后很快地得到擴展,變得可處理C++。之後也變得可處理Fortran、Pascal、Objective-C、Java、Ada,Go與其他語言。 許多操作系統,包括許多类Unix系統,如Linux及BSD家族都採用GCC作為标准编译器。蘋果電腦预装的Mac OS X操作系统也採用這個編譯器。 GCC原本用C開發,後來因為LLVM、Clang的崛起,它更快地將開發語言轉換為C++。許多C的愛好者在對C++一知半解的情況下主觀認定C++的性能一定會輸給C,但是Ian Lance Taylor給出了不同的意見,並表明C++不但性能不輸給C,而且能設計出更好,更容易維護的程式(、)。.

查看 GNU多重精度运算库和GCC

GNU

GNU是一個自由的作業系統,其內容軟體完全以GPL方式釋出。這個作業系統是GNU計劃的主要目標,名稱來自GNU's Not Unix!的遞迴縮寫,因為GNU的設計類似Unix,但它不包含具著作權的Unix代碼。GNU的創始人,理察·馬修·斯托曼,將GNU視為「達成社會目的技術方法」。 作為作業系統,GNU的發展仍未完成,其中最大的問題是具有完備功能的內核尚未被開發成功。GNU的內核,稱為Hurd,是自由軟體基金會發展的重點,但是其發展尚未成熟。在實際使用上,多半使用Linux內核、FreeBSD等替代方案,作為系統核心,其中主要的操作系統是Linux的發行版。Linux作業系統包涵了Linux內核與其他自由軟體計畫中的GNU組件和軟體,可以被稱為GNU/Linux(見GNU/Linux命名爭議)。.

查看 GNU多重精度运算库和GNU

GNU宽通用公共许可证

GNU宽通用公共许可证(GNU Lesser General Public License)简称LGPL,是由自由软件基金会公布的自由软件授权条款。它允许企业与软件开发者使用,或将LGPL授权的软件整合至他们自己的软件内(即使该软件是私有软件也被允许),同时不会受到Copyleft特性的许可证强制对软件开源的限制。该许可证常被用于一些(但不是全部)的GNU程序库。 这个许可证以前被称为GNU程式库通用公共许可证(GNU Library General Public License)。此许可证最新版本为“第3版”,2007年6月29日发布,较早的版本有2.0和2.1版。此種授權之出現,是為了在GPL與許可式授權(如MIT许可证及柏克萊大學的BSD许可证)間取得折衷。 採用LGPL之計畫本身雖然仍有“Copyleft”之限制條件,但這些限制不感染僅僅只--到本計畫的軟體。不過此等軟體仍會受到其他限制。 LGPL主要使用之標的為軟體函式庫(Software Libraries),但是其亦可使用於獨立存在的應用程式。比較有名的例子為Mozilla跟OpenOffice.Org。.

查看 GNU多重精度运算库和GNU宽通用公共许可证

Haskell

Haskell()是一种标准化的,通用的纯函數程式語言,有非限定性语义和强静态类型。它的命名源自美国逻辑学家哈斯凱爾·加里,他在数理逻辑方面上的工作使得函数式编程语言有了广泛的基础。在Haskell中,“函数是第一類物件”。作为一门函數程式語言,主要控制结构是函数。Haskell语言是1990年在编程语言Miranda的基础上标准化的,并且以λ演算为基础发展而来。这也是为什么Haskell语言以希腊字母「λ」(Lambda)作为自己的标志。Haskell具有“证明即程序、命题为类型”的特征, with 2 sections by William Craig, see paragraph 9E。.

查看 GNU多重精度运算库和Haskell

Maple

Maple是一个通用型的商用计算机代数系統。Maple起源于1988年,由加拿大安大略滑铁卢的一家公司,Waterloo Maple Inc.(亦称Maplesoft枫软)进行开发和商业销售。最新版是Maple 2018。它的主要竞争者是Mathematica。 目前共有五個版本:Personal(個人版),Professional(專業版),Academic(學術版),Government(政府版)和Student(學生版)。 2009年,枫软被日本软件商Cybernet Systems收购。.

查看 GNU多重精度运算库和Maple

Mathematica

#重定向 Wolfram Mathematica.

查看 GNU多重精度运算库和Mathematica

OCaml

OCaml,最早稱為Objective Caml,是Caml编程语言的主要实现,由Xavier Leroy,Jérôme Vouillon,Damien Doligez,Didier Rémy及其他人于1996年创立。OCaml是开放原始码项目。此项目的管理和大部分维护工作交由INRIA。.

查看 GNU多重精度运算库和OCaml

Perl

Perl是高階、通用、直譯式、動態的程式语言家族。最初设计者拉里·沃尔為了讓在UNIX上進行報表處理的工作變得更方便,決定開發一個通用的腳本語言,而在1987年12月18日發表。目前,Perl语言家族包含两个分支Perl 5以及Perl 6(开发中)。 Perl借用了C、sed、awk、shell脚本以及很多其他程式語言的特性。其中最重要的特性是Perl内部集成了正则表达式的功能,以及巨大的第三方代码库CPAN。 2000年开始,目前拉里·沃尔开始開發Perl 6,來作為Perl的後繼;不過,Perl 6語言的語法有很多轉變,所以Perl 6被視為Perl家族中的另一個語言。 Perl语言的应用范围很广,除CGI以外,Perl被用于图形编程、系统管理、网络编程、金融、生物以及其他领域。由于其灵活性,Perl被称为脚本语言中的瑞士军刀。.

查看 GNU多重精度运算库和Perl

PHP

PHP(全称:PHP:Hypertext Preprocessor,即“PHP:超文本预处理器”)是一种开源的通用计算机脚本语言,尤其适用于网络开发并可嵌入HTML中使用。PHP的语法借鉴吸收C语言、Java和Perl等流行计算机语言的特点,易于一般程序员学习。PHP的主要目标是允许网络开发人员快速编写动态页面,但PHP也被用于其他很多领域。 PHP最初是由勒多夫在1995年开始开发的;現在PHP的標準由the PHP Group維護。PHP以PHP License作為許可協議,不過因為這個協議限制了PHP名稱的使用,所以和開放原始碼許可協議GPL不相容。 PHP的應用範圍相當廣泛,尤其是在網頁程式的開發上。一般來說PHP大多執行在網頁伺服器上,透過執行PHP程式碼來產生使用者瀏覽的網頁。PHP可以在多數的伺服器和作業系統上執行,而且使用PHP完全是免費的。根據2013年4月的統計資料,PHP已經被安裝在超過2億4400萬個網站和210萬台伺服器上。 PHP在windows上有专门的官方移植编译项目,并且分多个VC编译器版本和线程安全特性来提供不同的版本支持。.

查看 GNU多重精度运算库和PHP

PHP许可证

PHP许可证(PHP License)是指在PHP语言发布时所使用的软件许可证。根据自由软件基金会的分类,PHP许可证属于与GPL不兼容的自由软件许可证,因为许可证限制了对“PHP”一词的使用;另外,PHP许可证也被开放源代码促进会认可为一种开源许可证。.

查看 GNU多重精度运算库和PHP许可证

Python

Python( ),是一种广泛使用的高级编程语言,属于通用型编程语言,由吉多·范罗苏姆创造,第一版发布于1991年。可以視之為一種改良(加入一些其他程式語言的優點,如物件導向)的LISP。作为一种解释型语言,Python的设计哲学强调代码的可读性和简洁的语法(尤其是使用空格缩进划分代码块,而非使用大括号或者关键词)。相比於C++或Java,Python让开发者能够用更少的代码表达想法。不管是小型还是大型程序,该语言都试图让程序的结构清晰明了。 与Scheme、Ruby、Perl、Tcl等动态类型编程语言一样,Python拥有动态类型系统和垃圾回收功能,能够自动管理内存使用,并且支持多种编程范式,包括面向对象、命令式、函数式和过程式编程。其本身拥有一个巨大而广泛的标准库。 Python 解释器本身几乎可以在所有的操作系统中运行。Python的正式直譯器CPython是用C语言编写的、是一個由社群驱动的自由软件,目前由Python软件基金会管理。.

查看 GNU多重精度运算库和Python

R

R,r是拉丁字母中的第18个字母。 R通常在語言中的發音屬於流音輔音,不過在歐洲,不同的語言之間存在着許多不一樣的發音方式。隨著印刷術和書寫方式的演變,曾經有一段時間R存在著一個變體叫做半r,今日,它已經隨著時間與長s一同消失在語言體系了。.

查看 GNU多重精度运算库和R

Ruby

Ruby 是一种面向对象、命令式、函数式、动态的通用编程语言。在20世纪90年代中期由日本電腦科學家松本行弘(Matz)设计并开发。 遵守BSD许可证和Ruby License。它的灵感与特性来自于Perl、Smalltalk、Eiffel、Ada以及Lisp语言。由Ruby语言本身还发展出了JRuby(Java平台)、IronRuby(.NET平台)等其他平台的Ruby语言替代品。.

查看 GNU多重精度运算库和Ruby

有理数

数学上,可以表达为两个整数比的数(a/b, b≠0)被定义为有理数,例如3/8,0.75(可被表达为3/4)。整数和分数统称为有理数。与有理数对应的是无理数,如\sqrt无法用整数比表示。 有理数与分數的区别,分數是一种表示比值的记法,如 分數\sqrt/2 是无理数。 所有有理数的集合表示为Q,Q+,或\mathbb。定义如下: 有理数的小数部分有限或为循环。不是有理數的實數遂稱為無理數。.

查看 GNU多重精度运算库和有理数

浮点数

在計算機科學中,浮點(floating point,縮寫為FP)是一種對於實數的近似值數值表現法,由一个有效數字(即尾数)加上冪數來表示,通常是乘以某个基数的整数次指數得到。以這種表示法表示的數值,稱為浮点數(floating-point number)。利用浮點進行運算,稱為浮点计算,這種运算通常伴随着因为无法精确表示而进行的近似或舍入。 計算機使用浮點數運算的主因,在於電腦使用二進位制的運算。例如:4÷2.

查看 GNU多重精度运算库和浮点数

数学软件

数学软件,是用來建模、分析、計算各種數學資料,包括數值、符號、幾何資料等之電腦軟體。.

查看 GNU多重精度运算库和数学软件

整数

整数,是序列中所有的数的统称,包括负整数、零(0)与正整数。和自然數一樣,整數也是一個可數的無限集合。這個集合在数学上通常表示粗體Z或\mathbb,源于德语单词Zahlen(意为“数”)的首字母。 在代數數論中,這些屬於有理數的一般整數會被稱為有理整數,用以和高斯整數等的概念加以區分。.

查看 GNU多重精度运算库和整数

.NET框架

--是由微軟開發,一個致力於敏捷軟體開發(Agile software development)、快速應用開發(Rapid application development)、平臺獨立性和網路透明化的軟體框架。.NET是微軟為2000年代對伺服器和桌上型軟體工程邁出的第一步。.NET包含許多有助於互聯網和內部網應用迅捷開發的技術。.NET框架是微軟公司繼Windows DNA之後的新開發平臺。.NET框架是以一種採用系統虛擬機運行的編程平臺,以通用語言運行庫(Common Language Runtime)為基礎,支援多種語言(C#、F#、VB.NET、C++、Python等)的開發。.NET也為應用程式介面(API)提供了新功能和開發工具。這些革新使得程式設計員可以同時進行Windows應用軟體和網路應用軟體以及元件和服務(web服務)的開發。.NET提供了一個新的反射性的且物件導向程式設計編程介面。.NET設計得足夠通用化從而使許多不同高階語言都得以被彙集。 甲骨文公司的Java程式語言和Java平臺企業版技術是.NET平臺的競爭對手之一。 2014年11月12日,微軟宣布將完全開放.NET Framework的原始碼,並提供給Linux和OS X使用。.

查看 GNU多重精度运算库和.NET框架

另见

C函式庫

使用LGPL许可证的软件

數值函式庫

組合語言軟體

計算機算術