中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

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

發布時間:2021-12-03 10:21:49 來源:億速云 閱讀:316 作者:iii 欄目:編程語言

本篇內容主要講解“C#是編譯語言還是解釋語言”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“C#是編譯語言還是解釋語言”吧!

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

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

呵呵 我也很詫異“

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

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

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

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

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

昨天翻了翻龍書,也沒有給這兩個概念下詳細的定義,可見兩個概念是很難下個精確的定義的。

在<>(by Michaei L. Scott)這本書里面,我找到了相關的定義和說明,特摘錄如下

Compilation and Interpretation

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

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

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

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

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

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

書中的原文:”如果初始階段的翻譯器比較簡單,我們就說這個語言是“解釋的”。如果翻譯器很復雜,我們就說這一語言是“編譯的”。現在兩者的區分變得有些模糊了,因為“簡單”和“復雜”都是修飾性術語,也因為完全可能出現用一個編譯器(復雜的翻譯過程)生成代碼,而后又由一個復雜的虛擬機(解釋器)執行。對于***這種情況,如果翻譯器對程序做了徹底的分析(而不是做某種“機械的”變換),而且有關的中間語言程序與源程序并沒有很強的相似性,我們還是說這個語言是編譯的。這兩種特性----徹底的分析和非平凡的變換-----是刻畫編譯方式的標志性特征。“

根據以上標準,首先CSC只是對C#到IL做”機械“的翻譯,而且C#和IL之間有很強的相似性,因為兩者的程序代碼幾乎可以100%相互轉換(比如reflector可以將C#反編成IL,也可以將IL反編為C#)。

到此,相信大家對“C#是編譯語言還是解釋語言”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

辉县市| 堆龙德庆县| 文化| 龙井市| 临颍县| 德兴市| 大田县| 鄂伦春自治旗| 邓州市| 呼伦贝尔市| 丽水市| 邯郸县| 汉中市| 桦甸市| 丽江市| 唐山市| 抚州市| 平江县| 陇川县| 永济市| 秭归县| 天柱县| 肥乡县| 中宁县| 禄劝| 陵川县| 沛县| 江源县| 二手房| 佛学| 金平| 柳江县| 德州市| 中阳县| 贵南县| 百色市| 泰顺县| 宁强县| 通榆县| 元谋县| 富锦市|