通用高級語言

通用高級語言

通用高級語言是面向過程的語言,它可以在不同的計算機上運行,這類語言的指令非常接近普通英語、數學符號和實際問題。用這些語言編制的程式也稱作源程式,當要在計算機上運行時,需要通過編譯和(或)解釋程式翻譯成機器語言才能執行,但不同的語言有不同的處理方法。

基本介紹

  • 中文名:通用高級語言
  • 外文名:common high order language
  • 定義:面向過程的語言的合稱
  • 特點:易移植、可讀性高等
  • 代表:C語言、COBOL語言等
  • 所屬領域:計算機科學
FORTRAN,ALGOL,PASCAL,MODULA-2,COBOL,C,BASIC,PL/I,FORTH,

FORTRAN

FORTRAN於1956年由IBM公司發表。FORTRAN是FORMULA TRANSLATION的簡稱。
FORTRAN語言在國際上很流行,幾乎每一台計算機上都配有FORTRAN編譯程式。據統計,90%的從事數值計算的科技人員是利用FORTRAN語言來編寫程式的。
FORTRAN語言適合於進行科學計算,它具有下面一些特點。
(1)具有充分表達常用科學計算中包含算術運算和邏輯運算問題的能力。
(2)語言結構簡單,FORTRAN語言是塊結構語言,靜態且非遞歸。
FORTRAN提供五種基本數據類型整數實數,雙精度數,複數和布爾數。
FORTRAN程式由一個主程式和一組子程式(包括函式)組成。主程式和各子程式獨立編譯,把各個獨立編譯得到的目標用連線程式連線起來即可運行。

ALGOL

ALGOL 60(ALGOrithmic Language 60)是主要由歐洲學者設計的一種通用的算法語言,誕生於1960年。
ALGOL 60是以分程式嵌套結構為基礎的語言。它是第一個採用巴科斯範式(Backus Normal Form簡稱BNF)來定義其語法的語言。
ALGOL 60主要適用於科技計算領域。它有以下一些特點:
(1)分程式結構
分程式是由begin和end括起來的帶有局部變數說明的語法結構。分程式可以嵌套。最外面的分程式稱為ALGOL 60程式。
(2)變數作用域規則
變數作用域規則規定每個變數的作用範圍。變數只在其作用域內有定義。
(3)動態數組
ALGOL 60引入了可在運行時才確定其上、下界的動態數組。
(4)過程的遞歸調
過程內部出現調用過程本身的語句稱為過程的遞歸調用。過程的可遞歸調用給程式設計帶來了很大方便。
(5)參數傳遞
ALGOL 60提供了完整的子程式參數傳遞機制。

PASCAL

PASCAL語言是瑞士的N.wirth以ALGOL 60為基礎設計的簡明通用語言。七十年代的程式語言研究將PASCAL語言作為研究的基本骨架語言。PASCAL語言因大學、研究所的積極支持而得到了迅速普及。
PASCAL語言主要用於程式設計的入門教育,也可甩來開發軟體。PASCAL語言是體現結構化思想的典型。它有以下一些特點·
(1)系統,全面,清晰地體現了程式設計語言的基本概念。
(2)提供了豐富的數據類型,靈活的數據結構構造能力和結構化的程式結構。
PASCAL語言的缺點是沒有提供動態數組設施及指針使用中存在潛在危險等。

MODULA-2

MODULA是一種適用於模組程式設計的語言。也可用作系統程式設計語言。1980年N.Wirth將MODULA修改擴充成MODULA-2
MODULA-2的源程式是由模組組成的。模組可分成三種類型。定義模組、實現模組和一般模組。
一個定義模組定義了模組中的所有實體。一個定義模組和一個相應的實現模文配對。該實現模組為定義模組中所定義的過程體提供了實在的過程體。
一個一般模組是由一組定義(包括常量定義,變數定義,類型定義和過程定義)和一個用作初始化的程式潑組成。初始化程式段僅能改變局部予該模組的變數值。一般模組能定義抽象類型,這些抽象類型的實例可以共享模組的局部量。
MODULA-2中的標識符是用該標識符對應的模組名來限定的。MODULA-2中的模組是封閉的。所有非局部標識符必須在模組首的use表中列出。模組首的define表中列出了所有提供給外部引用的標識。模組外部只能使用define表中的標識符而不知道其內部結構。模組間還可以嵌套。因此,MODULA-2的模組提供了一個抽象數據機制。

COBOL

1959年在美國國防部主持下,計算機用戶和製造廠商的代表舉行集會,成立了CODASYL(Conference On Data Systems Language,數據系統語言協會)團體。CODASYL是計算機歷史上唯一的一個由眾多製造廠商聯合組成的團體,它在數據系統語言方面進行了廣泛的開拓性研究和開發。該協會予1959年底設計發表了COBOL語言。
COBOL(Common Business Oriented Language,面向商業的通用語言)主要用於企業數據處理這一計算機套用的主要領域。由於系統的輸入和輸出是企業套用軟體系統最關心的問題,COBOL語言的設計突出體現了輸入輸出檔案的性質和結構的特點。
COBOL語言有如下一些特點:
(1)描述事務數據處理方面的標準化語言。
(2)COBOL程式的結構分成標識部(IDENTIFICATIONDIVISION),環境部(ENVIRONMENT DIVISION),數據部(DATADIVISION)和過程部(PROCEDURE DIVISION)四部分組成。COBOL程式的標識部用以註明程式名和作者姓名並給出其它的注釋作為程式檔案說明。環境部含有如程式和外部數據檔案間聯繫等依賴於機器的程式說明。數據部包含了對數據的描述。過程部包含了算法的描述。
COBOL程式的四部分結構把依賴於機器的程式元素和獨立於機器的程式元素分開,把數據描述和算法描述分開,從而使每一部分都可以獨立修改而不影響到另外的部分,保證了源程式和執行結果最高的通用性,避免了由更換計算機帶來的重新編程問題。
(3)COBOL語言一個重要而明顯的特徵是它採用類似於英語的語法,使源程式便於閱讀,程式具有較好的自說明能力,有利於文檔化管理。
(4)用COBOL描述軟體系統,系統的硬體環境描述,數據設計描述和處理過程描述被分成獨立的三部分,使得系統開發分工容易,層次清晰。
(5)COBOL語言採用面向程式設計師的標準規格的檔案組織,使用方便,存取效率高。
(6)COBOL能方便地處理數值數據和文字數據。

C

C語言是1972年由D.M.Ritchie於貝爾實驗室在PDP/11機的UNIX作業系統上研製的。D.M.Ritchie由於其在C語言和UNIX系統上的貢獻而被美國計算機科學協會(ACM)授於1983年的圖靈獎
C語言是從系統設計語言BCPL發展起來的。
BCPL(Basic Combined Programming Language)是一種典型的可用於實現編譯器和作業系統的語言。它還可以進行表加工和數值計算。BCPL語言採用自編譯方式,即用BCPL語言本身書寫其編譯程式。BCPL還具有可移植性,它和具體的機器無關。
C語言具有高級語言的直觀、易學的優點,但它的執行效率相當於彙編語言。因此,C語言也常被稱為是一種較“低級”的高級語言。
C語言具有如下特點:
(1)C語言是一種結構化的程式設計語言,其程式結構清晰,行文緊湊。
(2)C語言程式具有較高的通用性,可移植性強。
(3)C語言考慮了系統硬體對程式的影響。
(4)C語言僅提供單向的控制流結構,函式間允許遞歸調用
(5)C語言本身僅提供處理簡單對象的操作和定義新數據結構的功能。對複合對象的處理操作,輸入輸出操作,檔案存取操作等都可用函式定義後組成系統的程式庫
由於C語言本身僅提供單向控制流結構和處理簡單對象的操作,C語言的編譯程式比較簡單,效率也較高。
C語言目前主要用於編寫系統軟體,以及其它對執行效率要求較高的軟體。

BASIC

BASIC(Beginnerfs All Purpose Symbolic Instruction Code)語言是由Dartmouth大學的J.G.Kemeny和T.E.Kurtz教授指導開發的。
BASIC語言有以下特點:
(1)BASIC語言可看作FORTRAN語言的子集,容易掌握,使用方便。
(2)BASIC一般採用解釋執行方式,支持會話式操作,允許用戶在終端上以與計算機進行對話的方式編制,修改和調試程式。
(3)BASIC具有編輯功能、圖形功能和進行檔案操作的功能。
BASIC種類繁多,有用作分時系統的BASIC,結構化BASIC,圖形用BASIC等。七十年代末進行了BASIC的標準化工作,推出了基本BASIC和擴展BASIC。

PL/I

PL/I(Programming Language/one)是由IBM公司與科技計算用戶團體SHARE的代表所組成的高級語言開發委員會(advanced language development committee)在六十年代中期開發的。
PL/I語言是一種大型的、全面的、匯集了各種各樣功能的語言。它兼有FORTRAN,ALGOL 60的數值計算功能,COBOL的數據處理功能以及多道,‘並行,中斷等功能。由於它的包羅萬象的特性,PL/I被稱為是“公共汽車"語言。
PL/I程式是分塊結構。它綜合了ALGOL 60的分程式結構和FORTRAN的塊程式結構。

FORTH

FORTH語言的開發起源於六十年代的天文學套用領域。它是一種可擴充型的語言。
FORTH程式的基本成分是詞,一個詞可看成是用來標識過程的字元序列。一個FORTH系統中有一個詞典,開始時詞典中只有製造商定義的基本詞。用戶使用FORTH系統時可以將其設計的詞加入詞典中,不斷擴充系統詞典內容。
FORTH系統要求用戶用逆波蘭形式書寫表達式。系統的所有操作都藉助一個棧來進行。因此,FORTH語言是一種面向棧結構的語言。

相關詞條

熱門詞條

聯絡我們