Fortran編譯器

Fortran編譯器

FORTRAN編譯器把程式翻譯成可執行形式,連線器把子程式和運行庫過程合併成一個可執行程式,然後執行這個被翻譯過的程式。

介紹

Fortran語言是一種在國際上廣泛流行的適於科學計算的程式語言,也是世界上產生最早的高級程式設計語言。Fortran是Formula Translation的縮寫,即數學公式翻譯器。

Fortran的起源要追溯到1954年IBM公司的一項計畫。IBM嘗試著在IBM 704計算機上開發一套程式,它可以把接近數學語言的文本翻譯成機器語言。1957年,他們開發出第一套Fortran編譯器。一個革命性的產品Fortran也隨之誕生了。20世紀60年代初,在國防、教育和科技領域對高性能計算工具的迫切需求下,Fortran語言蓬勃發展,成為當時統治計算機世界的高級語言之王,有很多軟體公司都推出了自己的編譯程式。但是,各個公司為了強調自己產品的功能,都在原來的Fortran語言之外添加了一些自己的獨門語法.從而導致了Fortran語言移植上的困難。

1962年,為了統一不同公司、不同硬體平台上的Fortran語言,美國國家標準局(ANSI)開始了語言標準化的嘗試,並在1966年制定了Fortran語言的統一標準,即Fortran 66。由於標準文檔過於簡單,約束力不強,Fortran 66標準發布後,語言的統一問題並沒有得到徹底解決。

1978年,美國國家標準局正式公布了Fortran語言標準的第一個修訂版本,這套標準就是所謂的Fortran 77。Fortran 77除了保留了Fortran 66標準的大部分內容外,還添加了許多適於結構化程式設計與維護的新特性。Fortran 77讓Fortran成了一種真正規範、高效和強大的結構化程式設計語言。

繼Fortran 77標準之後,1992年國際標準組織IS0又正式公布了嶄新的Fortran 90標準。Fortran 90標準除了引入自由的代碼風格外,還引入了模組、接口塊、自由定義(派生)數據類型和運算符、可動態分配和參與複雜運算的數組、例程重載、指針、遞歸等重要的語法特徵。這不但使結構化的語言更趨完善,也使其具備了少量的面向對象語言特徵。

1997年ISO又發布了Fortran 95標準。Fortran 95在Fortran 90的基礎上,加強了Fortran語言在並行運算方面的支持,並進一步完善了派生類型、指針、數組等要素的相關語法。

2004年5月,在ISO、IEC的聯合工作組JTCl/SC22/WG5以及美國標準委員會的共同努力下,終於推出了Fortran 2003標準。Fortran 2003對Fortran 95做了較多的改進,添加了很多新特性,例如增強的派生數據類型、面向對象編程、增強的數據操作功能和與C語言互操作等。Fortran 2003近乎徹底地解決了語言現代化的問題。

Fortran 2003之後的下一個版本是Fortran 2008。和Fortran 95一樣,Fortran 2008也只是一個小改版,略微更正了Fortran 2003的一些問題,並且合併了TR一19767的語言功能。

編譯器

編譯器(Compiler)就是把FORTRAN、C等高級語言翻譯成機器碼,從而使計算機能夠執行並得出相應結果的軟體。當然也有一些解釋語言並不需要編譯器就可以直接運行,例如Visual Basic、PHP、JavaScript等。

當FORTRAN語言開發出來以後,出現了很多種的編譯器,Windows系統下計算機上的常用平台如下。

1)FORTRAN Power Station 4.0。微軟公司將FORTRAN 90集成到Developer Studio開發環境之後推出的FORTRAN編譯器,這個平台真正實現了FORTRAN的可視化編程。

2)Digital Visual FORTRAN。由微軟公司和DEC公司聯合開發的功能更強大的FORTRAN編澤器。

3)其他的還有G95/gFORTRAN的Windows版本、Absoft FORTRAN、PGI Visual FORTRAN等。

這其中,影響較大、功能較全、性能較好、套用最廣泛的FORTRAN編譯器是提供了集成開發環境的Visual FORTRAN系列。

CVF編譯器

Visual FORTRAN系列編譯器的前身是微軟公司開發的FORTRAN Power Station 4.0編譯系統。該系統結合了當時微軟最新開發的Developer Studio集成開發環境(IDE),使得FORTRAN程式的開發方式跟上了時代的潮流。

Visual FORTRAN編譯器的優勢包括:全面支持FORTRAN 90語言標準;對FORTRAN語言進行豐富擴展;具有系統全面的線上文檔;能方便地與Microsoft Visual C++進行混合編程等。但是該編譯系統在實際使用中出現的問題較多,例如沒有嚴格的數組越界檢查功能等。

1997年3月,微軟公司與DEC公司達成協定,授權DEC提供其後繼版本Digital VisualFORTRAN 5.0版本;1998年1月,DEC公司和Compaq公司合併,於是Digital Visual FORTRAN更名為Compaq Visual FORTRAN。現在流行的最新版本是Compaq Visual FORTRAN Version6.6。

Compaq Visual FORTRAN由於具有以下突出特性,從而使以往的其他工具無法與之相媲美。

1)具有集成開發環境Developer Studio,程式設計者可以在集成開發環境中方便地進行編輯、編譯、連線和調試。

2)生成的是Windows作業系統下的32位應用程式,提高了代碼的執行效率,突破了原先PC系統下FORTRAN程式64KB定址空間的限制,更加充分地利用了系統資源。

3)在集成開發環境中,可以可視化地進行Windows用戶圖形界面設計、設定編譯連線選項和編譯連線。

4)FORTRAN Power Station的調試(Debug)功能使程式設計者可以在集成開發環境中方便地跟蹤和控制程式的執行,查看或修改變數和表達式的值,查看反彙編代碼或查看堆疊情況。

5)不僅可以開發傳統的控制台應用程式和圖形界面程式,還可以使用QuickWin庫在不必深入了解Windows系統的情況下,簡便地開發出具有Windows圖形界面特點應用程式,甚至可以更進一步地利用WindowsAPI函式接口進行Windows程式設計。

6)可以方便地與Visual c/c++、MASM和Visual Basic進行混合語言編程,以充分利用各個語言所具有的優點。

7)所建立的動態程式庫可以被Excel中的VBA調用,使開發出的應用程式與Excel相結合。

IVF編譯器

隨著計算機處理器技術的飛速發展,64位的計算機已經越來越普遍了,Intel公司的CORE處理器也從酷睿雙核升級為i5、i7,微軟的Windows 7系列的64位作業系統以其全新的界面、流暢的用戶體驗占有了極大的作業系統市場。

隨著64位作業系統的不斷發展,相應的FORTRAN開發也出現了一個問題——Compaq Visual PORTRAN(CVF)不支持64位系統,因為2005年以前FORTRAN 90/95的Win32開發環境多採用CompaqVisual FORTRAN 6.x,但2005年CVF開發團隊加盟到Intel公司,HP宣布其CVF6.6有效期截至2005年12月31日,Intel Visual FORTRAN(ⅣF)9.0將作為其新一代後繼編譯器。

IVF是在CVF的基礎上開發的FORTRAN編譯器,它將CVF前端與Inter處理器後端相結合,擁有CVF豐富的語言功能和Inter處理器的代碼生成及最佳化功能,使運行在Inter平台上的程式能得到大幅度提高。

隨著計算規模的增大,對計算記憶體的要求必須採用64位的程式才能夠滿足開發的要求,但CVF沒有提供64位系統的編譯平台。

另外,程式並行功能的實現可以用Intel的MKL所提供的函式館,這些函式館採用了共享記憶體並行計算的OpenMP,但以前的CVF沒有提供對OpenMP的支持,所以無法調用MKL的並行函式館。所以,從CVF 6.x轉移到IVF 9.0已是勢在必行,選用IVF來編譯FORTRAN程式也是很有必要的。

在使用CVF6.5/6.6編寫運行FORTRAN程式時,只需要安裝Compaq Visual FORTRAN6.5/6.6即可。這是因為在這個安裝源程式中,Visual FORTRAN已經被集成在Microsoft VisualStudio(VS)的圖形接口開發環境中了,所以可以直接安裝使用。

與C++相似,FORTRAN語言本身並沒有提供圖形界面輸出方面的功能,為了使用FORTRAN語言編寫圖形接口程式,必須藉助Intel Visual FORTRAN等圖形化的編譯器。Intel Visual FORTRAN編譯器幾乎封裝了完整的Win32 API和OpenGL函式,提供了良好、穩定的編程接口,所以藉助IVF,FORTRAN可以完成UI設計,同時也可以完成圖形編程。

採用IVF來編寫運行FORTRAN程式則稍微麻煩些。因為Intel Visual FORTRAN Compiler版本都只是編譯器,它需要放到集成開發環境(Integrated Development Environment,IDE)中去才能使用。故而lVF Compiler還需要VS 6.6以上版本IDE的支持,所以必須事先安裝好VS後,才能安裝編譯器。

提示:集成開發環境軟體是用於程式開發環境的應用程式,一般包括代碼編輯器、編譯器、調試器和圖形用戶界面丁具,就是集成了代碼編寫功能、分析功能、編譯功能、調試功能等一體化的開發軟體套。所有具備這一特性的軟體或者軟體套(組)都可以叫作IDE。如微軟的Visual Studio系列、Borland的C++ Builder、Delphi系列等。該程式可以獨立運行,也可以與其他程式並用。

相關詞條

相關搜尋

熱門詞條

聯絡我們