高級語言
由於
匯編語言依賴於硬件體系,且
助記符量大難記,於是人們又發明了更加易用的所謂
高級語言。在這種語言下,其語法和結構更類似普通英文,且由於遠離對硬件的直接操作,使得一般人經過學習之后都可以編程。
高級語言通常按其基本類型、代系、實現方式、應用范圍等分類。
程序設計語言的類型:
1.命令式語言。這種語言的
語義基礎是模擬“
數據存儲/數據操作”的
圖靈機
可計算模型,十分符合現代
計算機體系結構的自然實現方式。其中產生操作的主要途徑是依賴語句或命令產生的副作用。現代流行的大多數語言都是這一類型,比如 Fortran、Pascal、Cobol、C、C++、Basic、Ada、Java、C# 等,各種
腳本語言也被看作是此種類型。
2.函數式語言。這種語言的
語義基礎是基於
數學函數概念的值映射的λ
算子
可計算模型
。這種語言非常適合於進行
人工智能等工作的計算。典型的函數式語言如 Lisp、Haskell、ML、Scheme 等。
3.
邏輯式語言。這種語言的
語義基礎是基於一組已知規則的
形式邏輯系統。這種語言主要用在
專家系統的實現中。最著名的
邏輯式語言是 Prolog。
4.
面向對象語言。現代語言中的大多數都提供
面向對象的支持,但有些語言是直接建立在
面向對象基本模型上的,語言的語法形式的語義就是基本對象操作。主要的純
面向對象語言是 Smalltalk。
雖然各種語言屬於不同的類型,但它們各自都不同程度地對其他類型的運算模式有所支持。
程序設計語言從
機器語言到高級語言的抽象,帶來的主要好處是:
1.高級語言接近算法語言,易學、易掌握,一般
工程技術人員只要幾周時間的培訓就可以勝任
程序員的工作;
2.高級語言為
程序員提供了
結構化程序設計的環境和工具,使得設計出來的程序可讀性好,
可維護性強,可靠性高;
3.高級語言遠離
機器語言,與具體的
計算機硬件關系不大,因而所寫出來的程序
可移植性好,重用率高;
4.由於把繁雜瑣碎的事務交給了
編譯程序去做,所以自動化程度高,開發周期短,且
程序員得到解脫,可以集中時間和精力去從事對於他們來說更為重要的創造性勞動,以提
高程序的質量。