FORTRAN
來自站長百科
FORTRAN,亦譯為福傳,是英文“FORmula TRANslator”的縮寫,譯為“公式翻譯器”,它是世界上最早出現(xiàn)的計(jì)算機(jī)高級(jí)程序設(shè)計(jì)語言,廣泛應(yīng)用于科學(xué)和工程計(jì)算領(lǐng)域。FORTRAN語言以其特有的功能在數(shù)值、科學(xué)和工程計(jì)算領(lǐng)域發(fā)揮著重要作用。
FORTRAN開發(fā)歷史[ ]
- 早在1951年,美國IBM公司約翰·貝克斯(John Backus)針對(duì)匯編語言的缺點(diǎn)著手研究開發(fā)FORTRAN語言,并于1954年在紐約正式對(duì)外發(fā)布。
- 約翰·貝克斯提出的FORTRAN語言為FORTRANⅠ,F(xiàn)ORTRANⅠ雖然功能簡(jiǎn)單,但它的開創(chuàng)性工作,在社會(huì)上引起了極大的反響。
- 到1957年第一個(gè)FORTRAN編譯器在IBM704計(jì)算機(jī)上實(shí)現(xiàn),并首次成功運(yùn)行了FORTRAN程序。
- 在1962年,推出了FORTRAN Ⅳ。FORTRAN Ⅳ沒有充分考慮兼容性,導(dǎo)致FORTRANⅡ程序不能在FORTRAN Ⅳ系統(tǒng)中運(yùn)行,使其應(yīng)用受到了很大限制,這時(shí)語言不兼容性問題和影響被突出表現(xiàn)出來。此前也出現(xiàn)過FORTRAN Ⅲ,但由于存在嚴(yán)重缺陷,沒有在計(jì)算機(jī)上實(shí)現(xiàn)。
- 隨著FORTRAN語言版本的不斷更新和變化,語言不兼容性問題日益突出,語言標(biāo)準(zhǔn)化工作被提上了日程。1962年5月,美國標(biāo)準(zhǔn)化協(xié)會(huì)(簡(jiǎn)稱ANSI)成立相關(guān)機(jī)構(gòu)著手進(jìn)行FORTRAN語言標(biāo)準(zhǔn)化的研究工作。
- 并于1966年正式公布了兩個(gè)標(biāo)準(zhǔn)文本:美國國家標(biāo)準(zhǔn)FORTRAN(ANSI X3.9-1966)和美國國家標(biāo)準(zhǔn)基本FORTRAN(ANSI X3.10-1966),前者相當(dāng)于FORTRAN Ⅳ,后者相當(dāng)于FORTRANⅡ。基本FORTRAN是美國國家標(biāo)準(zhǔn)FORTRAN的一個(gè)子集,從而實(shí)現(xiàn)了語言的向下兼容,初步解決了語言的兼容性問題。
- 通常稱美國國家標(biāo)準(zhǔn)FORTRAN為FORTRAN 66。FORTRAN 66的推出在國際上產(chǎn)生了廣泛影響,1972年國際標(biāo)準(zhǔn)化組織(簡(jiǎn)稱ISO)在FORTRAN 66基礎(chǔ)上制定了FORTRAN語言三級(jí)國際標(biāo)準(zhǔn):基本級(jí)、中間級(jí)和完全級(jí)。
- 20世紀(jì)60代末,結(jié)構(gòu)化程序設(shè)計(jì)方法提出后,具有結(jié)構(gòu)化特征的程序設(shè)計(jì)語言開始出現(xiàn),如:ALGOL、PASCAL、MODULA、C等。如何將結(jié)構(gòu)化特征引入FORTRAN 66引起計(jì)算機(jī)廠商和研究機(jī)構(gòu)的高度重視,許多計(jì)算機(jī)廠商開始對(duì)FORTRAN 66進(jìn)行不同程度的擴(kuò)充,引入了結(jié)構(gòu)化特征。
- ANSI于1976年對(duì)FORTRAN 66(ANSI X3.9-1966)進(jìn)行了修訂,吸收了計(jì)算機(jī)廠商所擴(kuò)充的一些行之有效的功能,同時(shí)增加了許多新內(nèi)容。ANSI于1978年4月正式公布了新的美國國家標(biāo)準(zhǔn)(程序設(shè)計(jì)語言FORTRAN ANSI X3.9-1978),同時(shí)宣布撤消ANSI FORTRAN 3.9-1966,通常稱新標(biāo)準(zhǔn)為FORTRAN 77(該版本原計(jì)劃1977年公布)。
- FORTRAN 77向下兼容FORTRAN 66。在1980年,F(xiàn)ORTRAN 77被ISO正式確定為國際標(biāo)準(zhǔn)ISO 1539-1980,該標(biāo)準(zhǔn)分全集和子集。FORTRAN 77推出后,由于具有結(jié)構(gòu)化特征,在社會(huì)上得到了廣泛應(yīng)用,同時(shí)由于擴(kuò)充了字符處理功能,在非數(shù)值處理領(lǐng)域也能大顯身手。
- 20世紀(jì)80年代末,F(xiàn)ORTRAN 77結(jié)構(gòu)化和現(xiàn)代化的研究開始興起,到1991年5月,ANSI公布了新的美國國家標(biāo)準(zhǔn)FORTRAN(ANSI 3.198-1991)。
- 之后,ISO采納該標(biāo)準(zhǔn),并確定為國際標(biāo)準(zhǔn)ISO/IEC 1539-1:1991,新國際標(biāo)準(zhǔn)還采納了我國計(jì)算機(jī)和信息處理標(biāo)準(zhǔn)化技術(shù)委員會(huì)程序設(shè)計(jì)分會(huì)提出的多字節(jié)字符集數(shù)據(jù)類型及相應(yīng)的內(nèi)部函數(shù),為非英語國家使用計(jì)算機(jī)提供了極大的方便。
- 通常稱新標(biāo)準(zhǔn)為FORTRAN 90,F(xiàn)ORTRAN 90向下兼容FORTRAN 77。之后不久又出現(xiàn)了FORTRAN 95。
- FORTRAN 90的推出,使傳統(tǒng)FORTRAN語言具有了現(xiàn)代氣息。Fortran 2003 的規(guī)則已經(jīng)由ISO組織制定發(fā)布。
- Windows平臺(tái)下,微軟公司將FORTRAN 90無縫集成在Developer Studio集成開發(fā)環(huán)境之中,推出了Microsoft FORTRAN PowerStation 4.0,使FORTRAN 90真正實(shí)現(xiàn)了可視化編程,徹底告別了傳統(tǒng)DOS環(huán)境(字符界面),轉(zhuǎn)到了現(xiàn)代Windows環(huán)境(視窗界面),共享微軟公司W(wǎng)indows平臺(tái)的豐富資源。
- 在1997年3月,微軟公司和數(shù)據(jù)設(shè)備公司(Digital Equipment Corp,簡(jiǎn)稱DEC)強(qiáng)強(qiáng)聯(lián)合,合作研究、開發(fā)和推出了功能更強(qiáng)的FORTRAN語言新版本
Fortran的特性[ ]
- Fortran語言的最大特性是接近數(shù)學(xué)公式的自然描述,在計(jì)算機(jī)里具有很高的執(zhí)行效率。
- 易學(xué),語法嚴(yán)謹(jǐn)。
- 可以直接對(duì)矩陣和復(fù)數(shù)進(jìn)行運(yùn)算,這一點(diǎn)類似matlab。
- 自誕生以來廣泛地應(yīng)用于數(shù)值計(jì)算領(lǐng)域,積累了大量高效而可靠的源程序。
- 很多專用的大型數(shù)值運(yùn)算計(jì)算機(jī)針對(duì)Fortran做了優(yōu)化。
- 廣泛地應(yīng)用于并行計(jì)算和高性能計(jì)算領(lǐng)域。
- Fortran90,F(xiàn)ortran95,F(xiàn)ortran2003的相繼推出使Fortran語言具備了現(xiàn)代高級(jí)編程語言的一些特性。
Fortran語言的Hello World程序[ ]
下面是一個(gè)在標(biāo)準(zhǔn)輸出設(shè)備上使用Fortran90輸出Hello World的簡(jiǎn)單程序,這種程序通常作為開始學(xué)習(xí)編程語言時(shí)的第一個(gè)程序:
program main print *,'hello world' end
Fortran的將來[ ]
- Fortran語言是一種極具發(fā)展?jié)摿Φ恼Z言,在全球范圍內(nèi)流行過程中,F(xiàn)ortran語言的標(biāo)準(zhǔn)化不斷吸收現(xiàn)代化編程語言的新特性,并且在工程計(jì)算領(lǐng)域仍然占有重要地位。
- 不可否認(rèn),F(xiàn)ortran語言與目前流行的JAVA,C#等高級(jí)語言相比,它缺乏創(chuàng)造力。但是,工科學(xué)生必須注意到,由于Fortran在工程計(jì)算領(lǐng)域長期處于統(tǒng)治地位,很多優(yōu)秀的工程計(jì)算軟件都是運(yùn)用fortran語言編寫,例如ANSYS,Marc,為了能夠使用這些商業(yè)軟件的高級(jí)功能,必須先學(xué)會(huì)fortran語言,才能編寫應(yīng)用程序接口。
- 在數(shù)值計(jì)算中,F(xiàn)ortran語言仍然不可替代。Fortran90標(biāo)準(zhǔn)引入了數(shù)組計(jì)算等非常利于矩陣運(yùn)算的功能。在數(shù)組運(yùn)算時(shí),F(xiàn)ortran能夠自動(dòng)進(jìn)行并行運(yùn)算,這是很多編程語言不具備的。運(yùn)用fortran語言,你能夠運(yùn)用很多現(xiàn)成的函數(shù)軟件包,所以非常便利。(目前流行的Matlab的早期版本,主要就是為兩個(gè)著名的Fortran函數(shù)包提供程序接口)