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

  • 内容
  • 评论
  • 相关

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

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

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

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

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

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

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

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

.NET 平台的两步编译

本文标题:C#/.NET编译原理和跨平台特性

本文地址:http://www.hosteonscn.com/4981.html

评论

0条评论

发表评论

邮箱地址不会被公开。 必填项已用*标注