高級語言

高級語言

高級語言(High-level programming language)相對於機器語言(machine language,是一種指令集的體系。這種指令集,稱機器碼(machine code),是電腦的CPU可直接解讀的數據)而言。是高度封裝了的程式語言,與低級語言相對。它是以人類的日常語言為基礎的一種程式語言,使用一般人易於接受的文字來表示(例如漢字、不規則英文或其他外語),從而使程式編寫員編寫更容易,亦有較高的可讀性,以方便對電腦認知較淺的人亦可以大概明白其內容。由於早期電腦業的發展主要在美國,因此一般的高級語言都是以英語為藍本。在1980年代,當東亞地區開始使用電腦時,在日本、台灣及中國大陸都曾嘗試開發用各自地方語言編寫的高級語言,當中主要都是改編BASIC或專用於資料庫數據訪問的語言,但是隨著編程者的外語能力提升,現時的有關開發很少。

由於彙編語言依賴於硬體體系,且助記符量大難記,於是人們又發明了更加易用的所謂高級語言。在這種語言下,其語法和結構更類似漢字或者普通英文,且由於遠離對硬體的直接操作,使得一般人經過學習之後都可以編程。高級語言通常按其基本類型、代系、實現方式、套用範圍等分類。

基本介紹

  • 中文名:高級語言
  • 外文名:High-level programming language
  • 分類程式設計語言
簡介,類型,好處,

簡介

計算機語言具有高級語言和低級語言之分。而高級語言又主要是相對於彙編語言而言的,它是較接近自然語言和數學公式的編程,基本脫離了機器的硬體系統,用人們更易理解的方式編寫程式。編寫的程式稱之為源程式。
高級語言並不是特指的某一種具體的語言,而是包括很多程式語言,如流行的java,c,c++,C#,pascal,python,lisp,prolog,FoxPro,易語言,中文版的C語言習語言等等,這些語言的語法、命令格式都不相同。
低級語言分機器語言(二進制語言)和彙編語言(符號語言),這兩種語言都是面向機器的語言,和具體機器的指令系統密切相關。機器語言用指令代碼編寫程式,而符號語言用指令助記符來編寫程式。
高級語言與計算機的硬體結構及指令系統無關,它有更強的表達能力,可方便地表示數據的運算和程式的控制結構,能更好的描述各種算法,而且容易學習掌握。但高級語言編譯生成的程式代碼一般比用彙編程式語言設計的程式代碼要長,執行的速度也慢。所以彙編語言適合編寫一些對速度和代碼長度要求高的程式和直接控制硬體的程式。高級語言、彙編語言和機器語言都是用於編寫電腦程式的語言。
高級語言程式“看不見”機器的硬體結構,不能用於編寫直接訪問機器硬體資源的系統軟體或設備控制軟體。為此,一些高級語言提供了與彙編語言之間的調用接口。用彙編語言編寫的程式,可作為高級語言的一個外部過程或函式,利用堆疊來傳遞參數或參數的地址。

類型

程式設計語言的類型:
  1. 命令式語言。這種語言的語義基礎是模擬“數據存儲/數據操作”的圖靈機可計算模型,十分符合現代計算機體系結構的自然實現方式。其中產生操作的主要途徑是依賴語句或命令產生的副作用。現代流行的大多數語言都是這一類型,比如 FortranPascalCobolCC++BasicAdaJavaC# 等,各種腳本語言也被看作是此種類型。
  2. 函式式語言。這種語言的語義基礎是基於數學函式概念的值映射的λ運算元可計算模型。這種語言非常適合於進行人工智慧等工作的計算。典型的函式式語言如 LispHaskellMLScheme 、F#等。
  3. 邏輯式語言。這種語言的語義基礎是基於一組已知規則的形式邏輯系統。這種語言主要用在專家系統的實現中。最著名的邏輯式語言是 Prolog
  4. 面向對象語言。現代語言中的大多數都提供面向對象的支持,但有些語言是直接建立在面向對象基本模型上的,語言的語法形式的語義就是基本對象操作。主要的純面向對象語言是 Smalltalk
雖然各種語言屬於不同的類型,但它們各自都不同程度地對其他類型的運算模式有所支持。

好處

程式設計語言從機器語言到高級語言的抽象,帶來的主要好處是:
  1. 高級語言接近算法語言,易學、易掌握,一般工程技術人員只要幾周時間的培訓就可以勝任程式設計師的工作;
  2. 高級語言為程式設計師提供了結構化程式設計的環境和工具,使得設計出來的程式可讀性好,可維護性強,可靠性高;
  3. 高級語言遠離機器語言,與具體的計算機硬體關係不大,因而所寫出來的程式可移植性好,重用率高;
  4. 由於把繁雜瑣碎的事務交給了編譯程式去做,所以自動化程度高,開發周期短,且程式設計師得到解脫,可以集中時間和精力去從事對於他們來說更為重要的創造性勞動,以提高程式的質量。

相關詞條

熱門詞條

聯絡我們