<dfn id="is4kg"></dfn>
  • <ul id="is4kg"></ul>
  • <abbr id="is4kg"></abbr>
  • <ul id="is4kg"></ul>
    <bdo id="is4kg"></bdo>

    曙海教育集團(tuán)論壇開發(fā)語言培訓(xùn)專區(qū)C++語言開發(fā) → 到底C#是編譯語言還是解釋語言


      共有7025人關(guān)注過本帖樹形打印

    主題:到底C#是編譯語言還是解釋語言

    美女呀,離線,留言給我吧!
    wangxinxin
      1樓 個性首頁 | 博客 | 信息 | 搜索 | 郵箱 | 主頁 | UC


    加好友 發(fā)短信
    等級:青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊:2010-11-12 11:08:23
    到底C#是編譯語言還是解釋語言  發(fā)帖心情 Post By:2010-12-10 14:33:43

    我們這里須要討論的是C#是編譯語言還是解釋語言?將從解釋來執(zhí)行 討論,并結(jié)合流程圖來說明。希望最后的結(jié)論,能對大家有所幫助。

    “C# Java是解釋型語言?Oh my god”

    “引用vls:C# Java是解釋型語言?Oh my god

    呵呵 我也很詫異“

    “引用DiggingDeeply:@vlsC#不是解釋行語言,那JIT是干啥用的?

    無知并不可憐,無知還不知道自己無知才叫可憐”

    “。。。但如果因為它是"一邊變換一邊執(zhí)行", 就將其當(dāng)作解釋語言……只能說你看到表象卻沒抓住本質(zhì)。”

    很是無語,既然您認(rèn)為別人無知那您的有知拿出來給無知的人看看,行不?

    拋開這些不談,誰能給編譯型和解釋型給下個解釋。無一例外,要么就是某人的博客,要么就是搜索來的網(wǎng)頁,再要么就是放個闕詞就消散,這些作為論據(jù)充分不?

    昨天翻了翻龍書,也沒有給這兩個概念下細(xì)致的解釋,可見兩個概念是很難下個精確的解釋的。

    在<<programming language="" Pragmatics>>(by Michaei L. Scott)這本書里面,我找到了有關(guān)的解釋和說明,特摘錄如下

    Compilation and Interpretation

    高級語言里一個程序的編譯和執(zhí)行大概是 下面的情況:

    討論:到底C#是編譯語言還是解釋語言圖片1

    點擊查看大圖

    編譯器將高級語言從源代碼翻譯成與之等價的目標(biāo)程序(就相當(dāng)于從中文翻譯成中文),而后就隱退了。在隨后的某個時刻,用戶啟動目標(biāo)程序由操作系統(tǒng)執(zhí)行。實現(xiàn)高級語言的另外一種形式為解釋:

    討論:到底C#是編譯語言還是解釋語言圖片2

     

    與編譯不同的是,解釋器在目標(biāo)程序(其實根本就沒有目標(biāo)程序,只是與編譯來比較)執(zhí)行期間,解釋器一直隨之運行。這種執(zhí)行流程完全由解釋器控制的。從效果上看,解釋器實現(xiàn)了一臺“虛擬計算機(jī)”,其“機(jī)器語言”就是高級語言,解釋器一次讀入一條或多條語句,按照其自身規(guī)定的形式去執(zhí)行相應(yīng)的操作。一般說來,解釋比編譯有著很好的靈活性;編譯一般有著較好的性能。但是有些語言確是采用了兩者的混合形式:

    討論:到底C#是編譯語言還是解釋語言圖片3

    點擊查看大圖

    書中的原文:”如果原始階段的翻譯器比較基本,我們就說這個語言是“解釋的”。如果翻譯器很復(fù)雜,我們就說這一語言是“編譯的”。現(xiàn)在兩者的區(qū)分變得有些模糊了,因為“基本 ”和“復(fù)雜”都是修飾性術(shù)語,也因為完全可能出現(xiàn)用一個編譯器(復(fù)雜的翻譯流程)生成代碼,而后又由一個復(fù)雜的虛擬機(jī)(解釋器)執(zhí)行。對于最后這種情況,如果翻譯器對程序做了徹底的分析(而不是做某種“機(jī)械的”變換),而且有關(guān)的中間語言程序與源程序并沒有很強(qiáng)的相似性,我們還是說這個語言是編譯的。這兩種特征 ----徹底的分析和非平凡的變換-----是刻畫編譯形式的標(biāo)志性特征。“

    根據(jù)以上標(biāo)準(zhǔn),首先CSC只是對C#到IL做”機(jī)械“的翻譯,而且C#和IL之間有很強(qiáng)的相似性,因為兩者的程序代碼幾乎可以100%相互轉(zhuǎn)換(比如reflector可以將C#反編成IL,也可以將IL反編為C#)。您認(rèn)為呢?

    PS:再者某些人認(rèn)為的ngen和cache程序集其實也是支持C#是解釋語言的結(jié)論,因為編譯型語言因為性能的天然因素是不須要這些手段的。也許我是錯的,請您不吝賜教,感激涕零.本人禁止了不負(fù)責(zé)任的匿名評論,請大家海涵。


    支持(0中立(0反對(0單帖管理 | 引用 | 回復(fù) 回到頂部

    返回版面帖子列表

    到底C#是編譯語言還是解釋語言








    簽名
    主站蜘蛛池模板: 福利视频第一页| 一级一级人与动毛片| 欧美浓毛大泬视频| 国产va在线视频观看| 91av最新地址| 娇bbbb搡bbbb| 久久天天躁狠狠躁夜夜av| 欧美人与动欧交视频| 公啊灬啊灬啊灬快灬深用| 草莓视频色版在线观看| 国产精品永久免费10000| 三上悠亚亚洲一区高清| 日出水了特别黄的视频| 亚洲午夜在线一区| 欧美综合自拍亚洲综合图| 嘟嘟嘟www在线观看免费高清| 鸥美一级黄色片| 国内精品久久人妻无码不卡| 中文字幕一精品亚洲无线一区| 日本精品少妇一区二区三区| 亚洲欧美另类国产| 狠狠综合久久综合网站| 国产91精品一区| 被猛男cao尿了| 国产精华av午夜在线观看| a级毛片在线播放| 小婷的性放荡日记h交| 久久精品国产一区二区三区| 欧美三级不卡在线播放| 人妻妺妺窝人体色WWW聚色窝| 精品人妻VA出轨中文字幕| 国产午夜成人AV在线播放| 4480私人午夜yy苍苍私人影院| 在线观看黄网址| 一级黄色a毛片| 成年人毛片视频| 久久精品国产99国产精2020丨| 最近中文字幕无免费视频| 亚洲熟女WWW一区二区三区| 海角社区视频在线| 动漫成人在线观看|