欢迎光临
我们一直在努力

C#/.NET编译原理和跨平台特性

任何编程语言要被计算机理解,都需要转化成机器码才行,而转化的过程分为两种主要的形式,即编译和解释。

编译(compile)是将一种语言转换为另一种语言的动作,而一般来说,"另一种语言”通常是机器码(machine code/native code),即全部由 0 和 1 组成的语言,或者某种公共语言,当然机器码可以看作所有语言的目标公共语言。

使用编译器读入一 个文件,将会产出一个由目标语言写成的另一个文件,例如,C# 编译器会产出扩展名为 exe 或 dll 的文件,目标语言是 IL。

而相对的,解释(interpret)虽然也会将代码翻译为机器码,但是,却不会产生目标文件。

因此,每次运行解释型语言时,都需要重新进行解释。

不太准确地讲,编译可以类比为做好一桌菜才开吃,而解释可以类比为吃火锅,边涮边吃。

.NET 框架语言和 C、C++ 都是编译型语言,而它们之间还有一点不同。

.NET 框架语言是通过两步编译变成机器码的,如下图所示。

.NET 平台的两步编译

赞(0) 打赏
未经允许不得转载:hosteons中文网 » C#/.NET编译原理和跨平台特性

评论 抢沙发

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫

登录

找回密码

注册