小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

NET程序是如何編譯的

 昵稱10504424 2013-07-24
NET程序是如何編譯的?

      如果在系統(tǒng)中運行.NET程序,必須先安裝相應版本的.NET框架。.NET程序不是已經(jīng)編譯過了么?為什么還要依賴.NET框架呢?這和.NET程序的運行機制有關,傳統(tǒng)上,程序分為源代碼層和編譯后的本機代碼層(機器碼)。而.NET提供了對多種編程語言以及多重平臺的支持,所以在其中添加了中間代碼層,中間代碼被稱為IL或MSIL。由于多了中間代碼,使.NET程序有了更好的靈活性,有運行多個平臺的可能(如Linux系統(tǒng))。

       .NET框架的核心是CLR,即公共語言運行時,CLR是.NET程序的運行庫環(huán)境。中間語言需要在CLR中運行,并轉換成機器碼,所以.NET程序必須依賴.NET框架才能運行。以C#語言為例,C#編譯器編譯的程序只有中間語言構成,無法直接運行,必須由CLR執(zhí)行。

補充:

       .NET的這種編譯運行機制和Jave、ActionScript較相似,Java第一次編譯為字節(jié)碼,而Java良好的移植性得益于此。只要客戶機安裝了Java虛擬機(JVM),就可以直接運行Java程序(JVM將字節(jié)碼編譯成機器碼)。類似的,ActionScript同樣第一次被編譯成字節(jié)碼,并存放在swf文件中。只要客戶機安裝了FlashPlayer,swf即可運行,因為FlashPlayer含有AS虛擬機(AVM)。可見,.NET的CLR和JVM、AVM是殊途同歸。

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多