1 .NET Framework的核心是其运行库执行环境,即公共语言运行库(CLR)或.NET运行库,一般将CLR控制下运行的代码称为托管代码(managed code)。

在CLR在执行编写好的代码之前,需要将代码进行.NET编译,编译分为两个阶段

(1)把源代码编译为Microsoft中间语言(IL:中间语言是一种低级语言,语法简单,可快速转换为本地机器码,IL是即时编译的,称为JIT编译,编译为中间语言可以获得.NET的语言优点:1.平台无关性,2.提高性能,3.互操作性)。

(2)CLR把IL编译为平台专业代码。

.NET的语言优点:

1.平台无关性:包含字节码指令的同一文件可以放到任一平台中,编译为中间语言后就可以获得.NET的平台无关性。

2.提高性能:代码编译完一次后,得到的本地可执行程序就存储起来,直到退出该程序为止,当下次运行这部分代码时就不用编译,从而提高性能

3.互操作性:编译为中间语言的代码可以与从其他语言编译过来的代码进行交互操作。

随机推荐

  1. Nuget控制台 - 给你的快速添加缺少的包

    利用命令行安装包

  2. Google maps API开发(一)(转)

    一.加载Google maps API <script type="text/javascript" src="http://ditu.google.com/map ...

  3. js 数组排序要注意的问题,返回的值最好为 -1, 0, 1之间的值

    var test10Elements = [7, 6, 5, 4, 3, 2, 1, 0, 8, 9]; var comparefn = function (x, y) { return x - y; ...

  4. 批量除去php页面的bom,页面meta跑到body中就是这个问题

    <?php if (isset($_GET['dir'])){ //设置文件目录 $basedir=$_GET['dir']; }else{ $basedir = '.'; } $auto = ...

  5. 解读eXtremeComponents代码结构--转载

    原文地址:http://blog.csdn.net/lark3/article/details/1937466 大致整理了去年写的东西,罗列如下: ec是一系列提供高级显示的开源JSP定制标签,当前的 ...

  6. STC89C52单片机内部EEPROM驱动

    STC89C52单片机自身带有4K的存储空间,分为8个扇区,每个扇区512字节,第一扇区起始地址为:0x2000, 结束地址为:21FF, 第八扇区起始地址为0x2E00,结束地址是2FFF #inc ...

  7. 控制器跳转:tabbarcontroller怎么写代码切换视图?

    项目中有时候需要在界面中进行跳转  常用的有push  present等方法  但想要在tabbarcontroller的某个子控制器跳转到另一个子控制器  怎么做? 只需要一行代码: 1是你需要跳转 ...

  8. MATLAB 误差函数erf(x)

    误差函数: 1.误差函数定义为:   它的性质如下: 2 互补误差函数定义为: 它具有如下性质: 下表给出了误差函数的部分数值: 0.00 0.00000 0.05 0.05637 0.10 0.11 ...

  9. vim纯文本处理插件txtbrowser

    纯文本处理插件:txtBrowser 插件作者:http://guoyoooping.blog.163.com/ Github地址:https://github.com/vim-scripts/Txt ...

  10. react 全局面包屑

    renderBreadcrumb() { const {routes} = this.props; const items = routes.map((route, idx) => { let ...