簡介
計算機語言具有高級語言和低級語言之分。而高級語言又主要是相對於彙編語言而言的,它是較接近自然語言和數學公式的編程,基本脫離了機器的硬體系統,用人們更易理解的方式編寫程式。高級語言並不是特指的某一種具體的語言,而是包括很多程式語言,如目前流行的java,c,c++,C#,pascal,python,lisp,prolog,FoxPro,VC,易語言,中文版的C語言習語言等等,這些語言的語法、命令格式都不相同。
低級語言分機器語言(二進制語言)和彙編語言(符號語言),這兩種語言都是面向機器的語言,和具體機器的指令系統密切相關。機器語言用指令代碼編寫程式,而符號語言用指令助記符來編寫程式。
高級語言與計算機的硬體結構及指令系統無關,它有更強的表達能力,可方便地表示數據的運算和程式的控制結構,能更好的描述各種算法,而且容易學習掌握。但高級語言編譯生成的程式代碼一般比用彙編程式語言設計的程式代碼要長,執行的速度也慢。所以彙編語言適合編寫一些對速度和代碼長度要求高的程式和直接控制硬體的程式。高級語言、彙編語言和機器語言都是用於編寫電腦程式的語言。
高級語言程式“看不見”機器的硬體結構,不能用於編寫直接訪問機器硬體資源的系統軟體或設備控制軟體。為此,一些高級語言提供了與彙編語言之間的調用接口。用彙編語言編寫的程式,可作為高級語言的一個外部過程或函式,利用堆疊來傳遞參數或參數的地址。
類型
程式設計語言的類型:命令式語言。這種語言的語義基礎是模擬“數據存儲/數據操作”的圖靈機可計算模型,十分符合現代計算機體系結構的自然實現方式。其中產生操作的主要途徑是依賴語句或命令產生的副作用。現代流行的大多數語言都是這一類型,比如Fortran、Pascal、Cobol、C、C++、Basic、Ada、Java、C#等,各種腳本語言也被看作是此種類型。
函式式語言。這種語言的語義基礎是基於數學函式概念的值映射的λ運算元可計算模型。這種語言非常適合於進行人工智慧等工作的計算。典型的函式式語言如Lisp、Haskell、ML、Scheme、F#等。
邏輯式語言。這種語言的語義基礎是基於一組已知規則的形式邏輯系統。這種語言主要用在專家系統的實現中。最著名的邏輯式語言是Prolog。
面向對象語言。現代語言中的大多數都提供面向對象的支持,但有些語言是直接建立在面向對象基本模型上的,語言的語法形式的語義就是基本對象操作。主要的純面向對象語言是Smalltalk。
雖然各種語言屬於不同的類型,但它們各自都不同程度地對其他類型的運算模式有所支持。
好處
程式設計語言從機器語言到高級語言的抽象,帶來的主要好處是:高級語言接近算法語言,易學、易掌握,一般工程技術人員只要幾周時間的培訓就可以勝任程式設計師的工作;
高級語言為程式設計師提供了結構化程式設計的環境和工具,使得設計出來的程式可讀性好,可維護性強,可靠性高;
高級語言遠離機器語言,與具體的計算機硬體關係不大,因而所寫出來的程式可移植性好,重用率高;
由於把繁雜瑣碎的事務交給了編譯程式去做,所以自動化程度高,開發周期短,且程式設計師得到解脫,可以集中時間和精力去從事對於他們來說更為重要的創造性勞動,以提高程式的質量。