一:編譯器
編譯器是一種特殊的程序,它可以把以特定編程語(yǔ)言寫成的程序變?yōu)闄C(jī)器可以運(yùn)行的機(jī)器碼。我們把一個(gè)程序?qū)懞茫@時(shí)我們利用的環(huán)境是文本編輯器,這時(shí)我們把程序稱為源程序,在此以后程序員可以運(yùn)行相應(yīng)的編譯器,通過指定需要編譯的文件的名稱就可以把相應(yīng)的源文件(通過一個(gè)復(fù)雜的過程)轉(zhuǎn)化為機(jī)器碼了。
二:機(jī)器碼
機(jī)器語(yǔ)言(machine language)是一種指令集的體系。這種指令集,稱機(jī)器碼(machine code),是電腦的CPU可直接解讀的。
三:目標(biāo)程序
目標(biāo)程序又稱“目的程序”。 由編譯程序?qū)⒃闯绦蚓幾g成與之等價(jià)的由機(jī)器碼構(gòu)成的,計(jì)算機(jī)能直接運(yùn)行的程序,該程序叫目標(biāo)程序。
四:.NET中的CLR是什么?
它是ASP.NET中的公共語(yǔ)言運(yùn)行庫(kù),也就是說(shuō).aspx頁(yè)面是通過CLR進(jìn)行編譯成dll文件的,因?yàn)閍spx頁(yè)面可以用C#/VB.NET/J#等多種語(yǔ)言編寫代碼,不管那種語(yǔ)言編寫的代碼都是通過CLR編譯后生成同樣的dll文件。
五:解釋執(zhí)行和編譯執(zhí)行的區(qū)別?
計(jì)算機(jī)并不能直接地接受和執(zhí)行用高級(jí)語(yǔ)言編寫的源程序,源程序在輸入計(jì)算機(jī)時(shí),通過"翻譯程序"翻譯成機(jī)器語(yǔ)言形式的目標(biāo)程序,計(jì)算機(jī)才能識(shí)別和執(zhí)行。這種"翻譯"通常有兩種方式,即編譯方式和解釋方式。編譯方式是指利用事先編好的一個(gè)稱為編譯程序的機(jī)器語(yǔ)言程序,作為系統(tǒng)軟件存放在計(jì)算機(jī)內(nèi),當(dāng)用戶將高級(jí)語(yǔ)言編寫的源程序輸入計(jì)算機(jī)后,編譯程序便把源程序整個(gè)地翻譯成用機(jī)器語(yǔ)言表示的與之等價(jià)的目標(biāo)程序,然后計(jì)算機(jī)再執(zhí)行該目標(biāo)程序,以完成源程序要處理的運(yùn)算并取得結(jié)果。解釋方式是指源程序進(jìn)入計(jì)算機(jī)后,解釋程序邊掃描邊解釋,逐句輸入逐句翻譯,計(jì)算機(jī)一句句執(zhí)行,并不產(chǎn)生目標(biāo)程序。
更多信息請(qǐng)查看IT技術(shù)專欄