天天看點

程式設計語言的發展曆程一、機器語言(Machine language)二、彙編語言(Assembly language)三、進階語言(High-level programming language)

程式設計語言的發展曆程一、機器語言(Machine language)二、彙編語言(Assembly language)三、進階語言(High-level programming language)

一、機器語言(Machine language)

機器語言被認為是第一代計算機語言。機器語言是指不經翻譯即可為機器直接了解和接受的指令代碼。計算機隻能直接識别機器語言,也就是所謂的0/1代碼。

程式設計語言的發展曆程一、機器語言(Machine language)二、彙編語言(Assembly language)三、進階語言(High-level programming language)

上圖是內建電路闆裡的IC引腳,由于它隻有0V和+5V兩種電壓狀态,是以可以通過二進制裡的0和1來分别控制這兩種電壓狀态,進而實作對其他部分的控制,最終完成對一些程式的控制。

例如:11110100 ⇀ 代表停機結束

二、彙編語言(Assembly language)

由于機器語言不易于了解和記憶,是以後來人們發明了彙編語言。彙編語言是指用助記符代替機器指令的操作碼,用位址符号或标号代替指令或操作數的位址。簡單來說,就是用一些容易了解和記憶的字母,單詞來代替一個特定的指令。通過這種方法,人們很容易去閱讀 已經完成的程式或者了解程式正在執行的功能,對現有程式的bug修複以及營運維護都變得更加簡單友善。

例如:ADD ⇀ 代表數字邏輯上的加減

三、進階語言(High-level programming language)

礙于特定的彙編語言和特定的機器語言指令集是一一對應的,不同平台之間不可直接移植,人們又發明了可移植的并且類似于人類自然語言的“進階語言”。它能夠不依賴于計算機硬體,能夠在不同機器上運作的程式。這樣可以免去很多程式設計的重複過程,提高效率,同時這種語言又要接近于數學語言或人的自然語言。

進階語言的發展分為兩個階段,以 1980 年為分界線,前一階段屬于結構化語言或者稱為面向過程的語言,後一階段屬于面向對象的語言。

1. 面向過程 (Procedure Oriented) :是一種 以過程為中心 的程式設計思想。通過一步一步的步驟(依次的調用一個個函數),進而實作解決某個問題,比如C語言。

2. 面向對象 (Object Oriented) :現實世界存在的任何事務都可以稱之為對象,有着自己獨特的個性。通過調用這些對象的屬性和方法去解決問題,比如Java語言。