什么是編程語言

2023-03-20 15:43 更新

我們要學(xué)習(xí)的編程語言是C++,因?yàn)樽?998年起大學(xué)先修課程考試就基于C++語言了。之前的考試用的是Pascal語言。C++和Pascal都是高級語言,你或許也聽說過Java、C和FORTRAN等其他高級語言吧。

從“高級語言”這個(gè)名字可以推斷,應(yīng)該同樣存在低級語言,低級語言一般也稱為機(jī)器語言或匯編語言。不嚴(yán)格地講,計(jì)算機(jī)只能執(zhí)行低級語言編寫的程序。正因如此,高級語言編寫的程序需要經(jīng)過翻譯才能運(yùn)行。翻譯也要消耗時(shí)間,這是高級語言的一個(gè)小缺點(diǎn)。

但高級語言的優(yōu)勢是巨大的。首先,使用高級語言編程要容易得多,“容易”意味著編程時(shí)間更少,代碼更簡短易讀,出錯(cuò)的可能性更小。其次,高級語言是可移植的,也就是說程序只需要很小的改動甚至不需要改動就可以在各類機(jī)器上運(yùn)行。而低級語言編寫的程序只能在某一種機(jī)器上運(yùn)行,必須重寫才能支持其他類型的機(jī)器。

正因?yàn)檫@些優(yōu)點(diǎn),幾乎所有的程序都是用高級語言編寫的,低級語言僅用于一些特殊的應(yīng)用場合。

有兩種翻譯程序的方式:解釋編譯。解釋器讀取高級語言程序并執(zhí)行程序語句。實(shí)際上,解釋器采用的是逐行翻譯的方式,每讀一行就執(zhí)行該行,然后讀取下一行,交替進(jìn)行。 enter image description here

編譯器讀取高級語言程序,并在執(zhí)行程序命令之前全部翻譯好。通常,對程序進(jìn)行編譯是獨(dú)立的一步,之后才能執(zhí)行編譯好的代碼。在這種情況下,高級語言程序稱為源代碼,而翻譯后的程序稱為目標(biāo)代碼可執(zhí)行程序

比如使用C++編程序時(shí),你可以使用文本編輯器編寫代碼(文本編輯器是一個(gè)簡單的字處理器),寫好之后,將它保存在一個(gè)名為program.cpp的文件中,其中“program”可以是你起的任意名字,而“.cpp”是約定的C++源代碼文件后綴。

然后,你可以離開文本編輯器并運(yùn)行編譯器(具體情況取決于你的編程環(huán)境)。編譯器讀入源代碼,翻譯之后,會創(chuàng)建一個(gè)名為program.o的目標(biāo)代碼文件,或者名為program.exe的可執(zhí)行文件。 enter image description here

編譯完成之后,下一步就是執(zhí)行程序,執(zhí)行需要某種執(zhí)行器。執(zhí)行器負(fù)責(zé)加載程序(把程序從磁盤復(fù)制到內(nèi)存)并讓計(jì)算機(jī)啟動執(zhí)行程序。

這個(gè)過程可能看起來很復(fù)雜,但不必?fù)?dān)心,大多數(shù)編程環(huán)境(有時(shí)也稱作開發(fā)環(huán)境)已經(jīng)將這些步驟自動化了。一般而言,你需要做的就是編寫代碼,然后敲一個(gè)命令就能編譯和運(yùn)行程序。另一方面,理解這個(gè)過程背后的步驟是有意義的,出錯(cuò)的時(shí)候你能更好地找出問題所在。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號