| 企服解答
編程語言的分類有機器語言、匯編語言、高級語言三大類。
編程語言的分類
1、機器語言
二進制代碼。
2、匯編語言
面向機器的程序設計語言。
3、高級語言
(1)按轉換方式可分為兩類:編譯型語言和解釋型語言。
編譯型語言:編譯性語言寫的程序在被執行之前,需要一個專門的編譯過程,把程序編譯成為機器語言的文件,比如exe文件,以后要運行的話就不用重新翻譯了,直接使用編譯的結果就行了(exe文件),因為翻譯只做了一次,運行時不需要翻譯,所以編譯型語言的程序執行效率高。例如: C/C++、Pascal/Object Pascal(Delphi)。
解釋型語言:解釋性語言的程序不需要編譯,在運行程序的時候才翻譯,每個語句都是執行的時候才翻譯。這樣解釋性語言每執行一次就需要逐行翻譯一次,效率比較低。現代解釋性語言通常把源程序編譯成中間代碼,然后用解釋器把中間代碼一條條翻譯成目標機器代碼,一條條執行。例如:Java、JavaScript、Perl、Python、Ruby、MATLAB 等。
腳本語言:腳本語言是一種解釋性的語言,腳本語言是為了縮短傳統的編寫-編譯-鏈接-運行(edit-compile-link-run)過程而創建的計算機編程語言。腳本語言一般都 有相應的腳本引擎來解釋執行。 他們一般需要解釋器才能運行。一個腳本通常是解釋運行而非編譯。腳本語言通常都有簡單、易學、易用的特性,目的就是希望能讓程序員快速完成程序的編寫工作。而宏語言則可視為腳本語言的分支,兩者也有實質上的相同之處。腳本語言一般都是以文本形式存在,類似于一種命令。例如:Python、JavaScript,ASP,PHP,Perl等。
(2)按照客觀系統的描述可分為兩類:面向過程語言和面向對象語言。
面向過程語言:是以過程或函數為基礎的,這種語言對底層硬件,內存等操作比較方便,但是寫代碼和調試維護等會很麻煩。例如:c語言。
面向對象語言:是一類以對象作為基本程序結構單位的程序設計語言,指用于描述的設計是以對象為核心,而對象是程序運行時刻的基本成分。語言中提供了類、繼承等成分。面向對象語言的發展有兩個方向:一種是純面向對象語言,如Smalltalk、EIFFEL等;另一種是混合型面向對象語言,即在過程式語言及其它語言中加入類、繼承等成分,如C++、Objective-C等。
(3)按照編程范型可分為四類:命令式語言、函數式語言、邏輯式語言和面向對象語言。
命令式語言:命令式程序設計語言是基于動作的語言,以馮諾依曼計算機體系結構為背景。機器語言及匯編語言是最早的命令式語言。在這種語言中,計算機被看做是動作的序列,程序就是用語言提供的操作命令書寫的一個操作序列。用命令式程序設計語言編寫程序,就是描述解題過程中每一步的過程,程序的運行過程就是問題的求解過程,因此也稱為過程式語言。Fortran、ALGOL、COBOL、C、Ada、Pascal等都是命令式程序設計語言。
函數式語言:函數式編程是種編程典范,它將電腦運算視為函數的計算。函數編程語言最重要的基礎是 λ 演算(lambda calculus)。而且λ演算的函數可以接受函數當作輸入(參數)和輸出(返回值)。和指令式編程相比,函數式編程強調函數的計算比指令的執行重要。和過程化編程相比,函數式編程里,函數的計算可隨時調用。這種語言的語義基礎是基于數學函數概念的值映射的λ算子可計算模型。這種語言非常適合于進行人工智能等工作的計算。典型的函數式語言如 Lisp、Haskell、ML、Scheme 、F#等。
邏輯式語言:這種語言的語義基礎是基于一組已知規則的形式邏輯系統。這種語言主要用在專家系統的實現中。最著名的邏輯式語言是 Prolog。
面向對象語言:現代語言中的大多數都提供面向對象的支持,但有些語言是直接建立在面向對象基本模型上的,語言的語法形式的語義就是基本對象操作。主要的純面向對象語言是 Smalltalk。
| 拓展閱讀
計算機語言:
通常,我們使用英語,印地語等語言來進行兩個人之間的交流。這意味著當我們想要在兩個人之間進行交流時,我們需要一種語言來表達他們的感受。同樣,當我們想要在用戶和計算機之間或兩臺或多臺計算機之間進行通信時,我們需要一種語言,用戶可以通過該語言向計算機提供信息,反之亦然。當用戶想要向計算機發出任何指令時,用戶需要特定的語言,并且該語言被稱為計算機語言。
用戶使用程序與計算機交互,程序使用C,C ++,Java等計算機編程語言創建,
計算機語言是用戶通過編寫程序指令與計算機通信的語言。
每種計算機編程語言都包含一組預定義的單詞和一組用于創建程序指令的規則(語法)。
[免責聲明]
文章標題: 編程語言的分類
文章內容為網站編輯整理發布,僅供學習與參考,不代表本網站贊同其觀點和對其真實性負責。如涉及作品內容、版權和其它問題,請及時溝通。發送郵件至36dianping@36kr.com,我們會在3個工作日內處理。