程序设计语言的基本概念
程序設計語言是為了書寫計算機程序而人為設計的符號語言,用于對計算過程進行描述、組織和推導。
程序設計語言的廣泛使用始于1957年出現的FORTRAN,程序設計語言的發展是一個不斷演化的過程,其根本推動力是更高的抽象機制以及對程序設計思想的更好支持。
低級語言與高級語言
計算機硬件只能識別由0、1組成的機器指令序列,即機器指令程序,因此機器指令是最基本的計算機語言。
由于機器指令是特定的計算機系統所固有的、面向機器的語言,所以用機器語言進行程序設計時效率很低,程序的可讀性很差,也難以修改和維護。
因此,人們就用易記憶的符號代替0、1序列來表示機器指令,例如,用ADD表示加法,用SUB表示減法等。用符號表示的指令稱為匯編指令,匯編指令的集合被稱為匯編語言。
匯編語言的源程序由若干條語句組成,其中可以有三類語句:指令語句、偽指令語句和宏指令語句。
指令語句又稱為機器指令語句,將其匯編后能產生相應的機器代碼,這些代碼能被CPU直接識別并執行相應的操作?;镜闹噶钣蠥DD、SUB和AND等,書寫指令語句時必須遵守指令的格式要求。
偽指令語句指示匯編程序在匯編源程序時完成某些工作,例如為變量分配存儲單元地址,給某個符號賦一個值等。偽指令語句經編譯后不產生機器代碼。
在匯編語言中,還允許將多次重復使用的程序段定義為宏。宏指令語句就是宏的引用。
匯編語言的書寫格式在很大程度上取決于特定計算機的機器指令,因此它仍然是一種面向機器的語言,人們稱機器語言和匯編語言為低級語言。
在此基礎上,人們開發了功能更強、抽象級別更高的語言以支持程序設計,于是就產生了面向各類應用的程序設計語言,稱為高級語言。常見的有Java、C、C++、PHP、Python等。
程序設計語言的定義
一般地,程序設計語言的定義都涉及語法、語義和語用等方面。
語法是指由程序設計語言的基本符號組成程序中的各個語法成分(包括程序)的一組規則。其中由基本字符構成的符號(單詞)書寫規則稱為詞法規則,由符號構成語法成分的規則稱為語法規則。
語義是程序設計語言中按語法規則構成的各個語法成分的含義,分為靜態語義和動態語義。靜態語義是指編譯時可以確定的語法成分的含義,而運行時刻才能確定的含義是動態語義。
一個程序的執行效果說明了該程序的語義,它取決于構成程序的各個組成部分的語義。
語用表示了構成語言的各個記號和使用者的關系,設計符合的來源、使用和影響。
程序設計語言的分類
(1) 命令式和結構化程序設計語言
命令式語言是基于動作的語言,在這種語言中,計算被看成是動作的序列。命令式語言族開始于Fortran,Pascal和C語言都可以體現命令式程序設計的關鍵思想。
在這種語言中,計算機被看作是動作的序列,程序就是用語言提供的操作命令書寫的一個操作序列。用命令式程序設計語言編寫程序,就是描述解題過程中每一步的過程,程序的運行過程就是問題的求解過程,因此也稱為過程式語言。
機器語言及匯編語言是最早的命令式語言。
通常所稱的結構化程序設計語言屬于命令式語言類,其結構特性主要體現在以下幾個方面:
一是用自頂向下的逐步精化的方法編程,二是按模塊組織的方法編程,三是程序只包含順序、判定及循環構造,而且每種構造只允許單入口和單出口。
結構化程序的結構簡單清晰、模塊化強,描述方式接近人們習慣的推理式思維方式,因此可讀性強。C、PASCAL等都是典型的結構化程序設計語言。
(2) 面向對象的程序設計語言
程序設計語言的演化從機器語言開始到匯編語言到各種結構化高級語言,最后到支持面向對象技術的面向對象語言,反映的就是一條抽象機制不斷提高的演化道路。
C++、Java和Smalltalk是面向對象程序設計語言的代表,它們都支持封裝、繼承、多態等面向對象技術。
(3) 函數式程序設計語言
函數式設計語言是一類以λ演算為基礎的語言,其基本概念來自于LISP,這是一個在1958年為了人工智能應用而設計的語言。函數是一種對應規則(映射),使定義域的每個元素和值域中的唯一的元素相對應。
常見的函數式程序設計語言有Haskell、Scala、Scheme、APL等。
(4) 邏輯型程序設計語言
邏輯型程序設計語言是一類以形式邏輯為基礎的語言,其代表是建立在關系理論和一階謂詞理論基礎上的PROLOG。PROLOG有很強的推理功能,適用于編寫自動定理證明、專家系統和自然語言理解等問題的程序。
總結
以上是生活随笔為你收集整理的程序设计语言的基本概念的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 用友A8 mysql配置文件_用友nc
- 下一篇: VB调用API函数