什麼是程序?

編程語言分爲低級語言和高級語言
機器語言和彙編語言屬於低級語言,直接用計算機指令編寫程序。而 C、C++、Java、Python等屬於高級語言,用語句編寫程序,語句是計算機指令的抽象表示。

c 語言 :
a = b + 1;

彙編語言:
mov 0x804101c, %eax
add $0x1, %eax
mov %eax, 0x804a018

機器語言:
a1 1c a0 04 08
83 c0 01
a3 18 a0 04 08

彙編語言和機器語言是一一對應的關係,一條指令對應一條機器碼。
彙編語言到機器語言的轉化,是彙編器(Assembler)完成。
C語言的語句和低級語言的指令不是簡單的一一對應關係。

一條語句翻譯成三條彙編或機器指令,這個過程成爲編譯(Compile),由編譯器完成。

有些高級語言以解釋的方式執行,解釋執行過程和C語言的編譯執行過程很不一樣。
例如編寫一個Shell腳本,利用 sh(解釋器)執行。

自然語言和形式語言。
自然語言是自然進化的。
形式語言是爲了特定應用而爲人設計的語言。

例如數學家用的數字和符號運算、化學家用的分子式等。編程語言也是一種形式語言,是專門用來設計表達計算過程的形式語言。
形式語言有嚴格的語法規則。語法規則由符號和結構的規則所組成。

有一種觀點認爲:編程和調試是一回事。

寫每一個編譯命令(gcc)都加上 -Wall 選項,幫助你發現錯誤。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章