程序設計語言是人和計算機通信的最基本的工具,會影響人的思維和解題方式,影響人和計算機通信的方式和質量,影響其他人閱讀和理解程序的難易程度。
選擇適宜的程序設計語言的原因:
1.根據設計去完成編碼時,困難最少;
2.可以減少需要的程序測試量;
3.可以得到更容易閱讀和更容易維護的程序。
1.高級語言優于匯編語言:
匯編語言編碼需要把軟件設計翻譯成機器操作的序列,既困難又容易出差錯;
高級語言寫程序比用匯編語言寫程序生產率可以提高好幾倍;
用高級語言寫的程序容易閱讀、容易測試、容易調試、容易維護。
2.理想標準:
應該有理想的模塊化機制,以及可讀性好的控制結構和數據結構;
使編譯程序能夠盡可能多地發現程序中的錯誤;
應該有良好的獨立編譯機制。
3.實用標準:
系統用戶的要求;
可以使用的編譯程序;
可以得到的軟件工具;
工程規模;
程序員的知識;
軟件可移植性要求;
軟件的應用領域。
4.各種語言的分類和區別
編程語言俗稱“計算機語言”,種類非常的多,總的來說可以分成機器語言、匯編語言、高級語言三大類。?目前通用的編程語言有兩種形式:匯編語言和高級語言。
有許多用于特殊用途的語言,只在特殊情況下使用。例如,PHP專門用來顯示網頁;Perl更適合文本處理;C語言被廣泛用于操作系統和編譯器的開發(所謂的系統編程)。
高級語言的出現使得計算機程序設計語言不再過度地依賴某種特定的機器或環境。這是因為高級語言在不同的平臺上會被編譯成不同的機器語言,而不是直接被機器執行。
高級語言所編制的程序不能直接被計算機識別,必須經過轉換才能被執行,按轉換方式可將它們分為兩類:?
解釋類:執行方式類似于我們日常生活中的“同聲翻譯”,應用程序源代碼一邊由相應語言的解釋器“翻譯”成目標代碼(機器語言),一邊執行,因此效率比較低,而且不能生成可獨立執行的可執行文件,應用程序不能脫離其解釋器,但這種方式比較靈活,可以動態地調整、修改應用程序。?
編譯類:編譯是指在應用源程序執行之前,就將程序源代碼“翻譯”成目標代碼(機器語言),因此其目標程序可以脫離其語言環境獨立執行,使用比較方便、效率較高。但應用程序一旦需要修改,必須先修改源代碼,再重新編譯生成新的目標文件(* .OBJ)才能執行,只有目標文件而沒有源代碼,修改很不方便。現在大多數的編程語言都是編譯型的,例如Visual C++、Visual Foxpro、Delphi等。
匯編語言的實質和機器語言是相同的,都是直接對硬件操作,只不過指令采用了英文縮寫的標識符,更容易識別和記憶。
高級語言是大多數編程者的選擇。和匯編語言相比,它不但將許多相關的機器指令合成為單條指令,并且去掉了與具體操作有關但與完成工作無關的細節,例如使用堆棧、寄存器等,這樣就大大簡化了程序中的指令。同時,由于省略了很多細節,編程者也就不需要有太多的專業知識。
面向對象語言是指一切操作都以對象為基礎,它是由面向過程語言發展而來的,但正是它的這個特性使得面向對象語言對底層的操作不是很方便。例如:java語言。?
面向過程語言是以過程或函數為基礎的,這種語言對底層硬件,內存等操作比較方便,但是寫代碼和調試維護等會很麻煩。例如:c語言。