电竞比分网-中国电竞赛事及体育赛事平台

分享

計(jì)算機(jī)源代碼

 草珊瑚 2009-08-24
     1.理論上的概念
源代碼是相對(duì)目標(biāo)代碼和可執(zhí)行代碼而言的。
源代碼就是用匯編語(yǔ)言和高級(jí)語(yǔ)言寫(xiě)出來(lái)的地代碼。
目標(biāo)代碼是指源代碼經(jīng)過(guò)編譯程序產(chǎn)生的能被cpu直接識(shí)別二進(jìn)制代碼。
可執(zhí)行代碼就是將目標(biāo)代碼連接后形成的可執(zhí)行文件,當(dāng)然也是二進(jìn)制的。
   
    2.最直觀的概念
在這個(gè)網(wǎng)頁(yè)上右鍵鼠標(biāo),選擇查看源文件.出來(lái)一個(gè)記事本,里面的內(nèi)容就是此網(wǎng)頁(yè)的源代碼。
 
    3.源代碼(也稱(chēng)源程序),是指一系列人類(lèi)可讀的計(jì)算機(jī)語(yǔ)言指令。

在現(xiàn)代程序語(yǔ)言中,源代碼可以是以書(shū)籍或者磁帶的形式出現(xiàn),但最為常用的格式是文本文件,這種典型格式的目的是為了編譯出計(jì)算機(jī)程序。計(jì)算機(jī)源代碼的最終目的是將人類(lèi)可讀的文本翻譯成為計(jì)算機(jī)可以執(zhí)行的二進(jìn)制指令,這種過(guò)程叫做編譯,通過(guò)編譯器完成。
 
    4.作用

源代碼主要功用有如下2種作用:

生成目標(biāo)代碼,即計(jì)算機(jī)可以識(shí)別的代碼。

對(duì)軟件進(jìn)行說(shuō)明,即對(duì)軟件的編寫(xiě)進(jìn)行說(shuō)明。為數(shù)不少的初學(xué)者,甚至少數(shù)有經(jīng)驗(yàn)的程序員都忽視軟件說(shuō)明的編寫(xiě),因?yàn)檫@部分雖然不會(huì)在生成的程序中直接顯示,也不參與編譯。但是說(shuō)明對(duì)軟件的學(xué)習(xí)、分享、維護(hù)和軟件復(fù)用都有巨大的好處。因此,書(shū)寫(xiě)軟件說(shuō)明在業(yè)界被認(rèn)為是能創(chuàng)造優(yōu)秀程序的良好習(xí)慣,一些公司也硬性規(guī)定必須書(shū)寫(xiě)。

需要指出的是,源代碼的修改不能改變已經(jīng)生成的目標(biāo)代碼。如果需要目標(biāo)代碼做出相應(yīng)的修改,必須重新編譯。

    5.代碼組合

源代碼作為軟件的特殊部分,可能被包含在一個(gè)或多個(gè)文件中。一個(gè)程序不必用同一種格式的源代碼書(shū)寫(xiě)。例如,一個(gè)程序如果有C語(yǔ)言庫(kù)的支持,那么就可以用C語(yǔ)言;而另一部分為了達(dá)到比較高的運(yùn)行效率,則可以用匯編語(yǔ)言編寫(xiě)。

較為復(fù)雜的軟件,一般需要數(shù)十種甚至上百種的源代碼的參與。為了降低種復(fù)雜度,必須引入一種可以描述各個(gè)源代碼之間聯(lián)系,并且如何正確編譯的系統(tǒng)。在這樣的背景下,修訂控制系統(tǒng)(RCS)誕生了,并成為研發(fā)者對(duì)代碼修訂的必備工具之一。

還有另外一種組合:源代碼的編寫(xiě)和編譯分別在不同的平臺(tái)上實(shí)現(xiàn),專(zhuān)業(yè)術(shù)語(yǔ)叫做軟件移植。 

     6.版權(quán)

如果按照源代碼類(lèi)型區(qū)分軟件,通常被分為兩類(lèi):自由軟件和非自由軟件。自由軟件一般是不僅可以免費(fèi)得到,而且公開(kāi)源代碼;相對(duì)應(yīng)地,非自由軟件則是不公開(kāi)源代碼。所有一切通過(guò)非正常手段獲得非自由軟件源代碼的行為都將被視為非法。 

      7.質(zhì)量

對(duì)于計(jì)算機(jī)而言,并不存在真正意義上的“好”的源代碼;然而作為一個(gè)人,好的書(shū)寫(xiě)習(xí)慣將決定源代碼的好壞。源代碼是否具有可讀性,成為好壞的重要標(biāo)準(zhǔn)。軟件文檔則是表明可讀性的關(guān)鍵。 

      8.效率

雖然我們可以通過(guò)不同的語(yǔ)言來(lái)實(shí)現(xiàn)計(jì)算機(jī)的同一功能,但在執(zhí)行效率上則存在不同。普遍規(guī)律是:越高級(jí)的語(yǔ)言,其執(zhí)行效率越低。這也是為什么匯編語(yǔ)言生成的文件比用VB語(yǔ)言生成文件普遍要小的原因。
   

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多