通常由用戶用高級語言編寫程序,然后講它和數(shù)據(jù)一起送入計算機(jī)內(nèi),再由計算機(jī)將其翻譯成機(jī)器能識別的機(jī)器語言程序,機(jī)器自動運(yùn)行該機(jī)器語言程序,并將其計算結(jié)果輸出。
實際上,早期的計算機(jī)只有機(jī)器語言(用0.1代碼表示的語言),用戶必須用二進(jìn)制代碼來編寫程序。這就要求程序員對他們所使用的計算機(jī)硬件及其指令系統(tǒng)十分熟悉,編寫難度很大,操作也極容易出錯,但用戶編寫的計其語言程序可以直接在機(jī)器上執(zhí)行。
20世紀(jì)世50年代開始出現(xiàn)了符號式的程序設(shè)計語言,即匯編語言。他用符號ADD.SUB.MUL.DIV等分別表示加減乘除等操作。并用符號表示指令或數(shù)據(jù)所在存儲單元的地址,使程序員可以不再使用繁雜而又易錯的二進(jìn)制代碼來編寫程序,然后才能被計其接受并自動運(yùn)行。這個翻譯過程是由機(jī)器系統(tǒng)軟件中的匯編程序完成。
盡管有了虛擬機(jī)使用戶編寫更為方便,但是,匯編語言仍是一種面向?qū)嶋H機(jī)器的語言,它的每一條語句都是與機(jī)器 語言的某一條語句(0.1)一一對應(yīng)。因此,使用匯編語言編寫程序時,仍要成需要對實際機(jī)器的內(nèi)部組成和指令系統(tǒng)非常熟悉,也就是說,程序員必須經(jīng)過專門的訓(xùn)練,否則是無法操作計算機(jī)的。另一方面,由于匯編語言擺脫不了實際機(jī)器的指令系統(tǒng),因此,匯編語言沒有通用性,每臺機(jī)器必須有一種與之相對應(yīng)的匯編語言,這使得程序員要掌握不同機(jī)器的指令系統(tǒng),不利于計算機(jī)的廣泛應(yīng)用和發(fā)展。
20世紀(jì)60年代開始先后出現(xiàn)各種面向問題的高級語言,如fortran,basic,pascal,c等。這類高級語言對問題的描述十分接近人的習(xí)慣,并且具有較強(qiáng)的通用性。程序員不必了解掌握實際機(jī)器的機(jī)型,內(nèi)部的具體組成及指令系統(tǒng),只要掌握高級語言的語法和語義,便可直接用這種高級語言來編寫,給程序員帶來了極大的方便。
通常,將高級語言程序翻譯成機(jī)器語言程序的軟件稱為翻譯程序。翻譯程序有兩種:一種是編譯程序,另一種是解釋程序,編譯程序是將用戶編寫的高級語言程序的全部語句一次全部翻譯成機(jī)器語言程序,而后再執(zhí)行機(jī)器語言程序。因此,之喲啊源程序不變,就無須再次進(jìn)行翻譯。解釋程序是將源程序的一條語句翻譯成相對應(yīng)機(jī)器語言的一條語句,并且立即執(zhí)行這條語句,接著翻譯源程序的下一條語句,并執(zhí)行這條語句,如此重復(fù)直至完成源程序的全部翻譯任務(wù)。它的特點(diǎn)是翻譯一次執(zhí)行一次,即使下一次重復(fù)執(zhí)行該語句時,也必須重新翻譯。
-
計算機(jī)
+關(guān)注
關(guān)注
19文章
7360瀏覽量
87632 -
匯編語言
+關(guān)注
關(guān)注
14文章
409瀏覽量
35690
發(fā)布評論請先 登錄
相關(guān)推薦
評論