MSIL是一种通用的中间语言,类似于现在国际使用的英语,实现语言无关性。各编程语言,如C#、Javad,通过编译器翻译成MSIL。

MSIL是将.NET代码转化为机器语言的一个中间过程。它是一种介于高级语言和基于Intel的汇编语言的伪汇编语言。当用户编译一个.NET程序时,编译器将源代码翻译成一组可以有效地转换为本机代码且独立于CPU的指令。当执行这些指令时,实时(JIT)编译器将它们转化为CPU特定的代码。由于公共语言运行库支持多种实时编译器,因此同一段msil代码可以被不同的编译器实时编译并运行在不同的结构上。

编译为托管代码时,编译器将源代码翻译为Microsoft中间语言 (MSIL),这是一组可以有效地转换为本机代码且独立于 CPU 的指令。

CLR:负责运行程序。

JIT:即时编译器。

CLS:公共语言规范。(在MSIL里的作用,类似英语语法)

CTS:通用类型系统。(在MSIL里的作用,类似英语单词)

MSIL:微软中间语言——.Net语言无关性相关推荐

  1. 开放源码的.NET 反编译工具 .NET IL调试工具 学习微软中间语言(MSIL)的绝佳工具 Dotnet IL Editor 推荐...

    Dotnet IL Editor是一款.NET平台反编译工具,可以反编译.NET程序集文件为IL代码,并且可以执行,调试反编译后生成的IL代码.它的设计出发点比较直观,新建一个项目,添加程序集文件,设 ...

  2. Java是如何实现平台无关性(跨平台)的?

    相信对于很多Java开发来说,在刚刚接触Java语言的时候,就听说过Java是一门跨平台的语言,Java是平台无关性的,这也是Java语言可以迅速崛起并风光无限的一个重要原因.那么,到底什么是平台无关 ...

  3. Java如何实现的平台无关性的(面试必看)

    想要查看前面的笔记请翻阅我的CSDN博客,作者码字不易,喜欢的话点赞,加个关注吧,后期还有很多干货等着你! 相信对于很多Java开发来说,在刚刚接触Java语言的时候,就听说过Java是一门跨平台的语 ...

  4. Java是如何实现平台无关性的

    相信对于很多Java开发来说,在刚刚接触Java语言的时候,就听说过Java是一门跨平台的语言,Java是平台无关性的,这也是Java语言可以迅速崛起并风光无限的一个重要原因.那么,到底什么是平台无关 ...

  5. [转帖]解密微软中间语言MSIL之调试程序(1)

    没有程序员敢保证没有经过调试的代码绝对没有错误,无论他/她智商多么高,开发出来的代码总是或多或少带有一些错误(当然是无意的:-)).这些错误可能是简单的语法错误或者复杂的逻辑错误.因此和其他语言一样, ...

  6. 解密微软中间语言:MSIL

    在.Net框架中,公共语言基础结构使用公共语言规范来绑定不同的语言.通过要求不同的语言至少要实现公共类型系统(CTS)包含在公共语言规范中的部分,公共语言基础结构允许不同的语言使用.Net框架.因此在 ...

  7. 微软中间语言—MSIL(转载)

    在.Net框架中,公共语言基础结构使用公共语言规范来绑定不同的语言.通过要求不同的语言至少要实现公共类型系统(CTS)包含在公共语言规范中的部分,公共语言基础结构允许不同的语言使用.Net框架.因此在 ...

  8. Java Virtual Machine:Java语言的一个非常重要的特点就是与平台的无关性

    Java语言的一个非常重要的特点就是与平台的无关性.而使用Java虚拟机是实现这一特点的关键.一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码.而引入Java语言虚拟机后,Java ...

  9. java语言有没有平台无关性_Java语言具有良好的安全性和可移植性及平台无关性。...

    [判断题]在类的定义中如果不明确给出父类,那么默认父类是Object类. [判断题]数组一旦创建大小不可改变. [单选题]手绘天花布置图的表示方法中,凡是剖到的墙.柱的断面轮廓线用( )绘制. [单选 ...

最新文章

  1. 目录服务技术介绍——ADSI(三)
  2. LeetCode精讲题 10正则表达式匹配(动态规划)
  3. ExtJs之自定义事件
  4. (三)Linux查看和修改文件权限
  5. 2013年1月18日调试触发器“表发生了变化,触发器或函数不能读它”的出现原因,以及解决方案...
  6. informix如何查询第一条记录
  7. 寻宝处理器的引人入胜之旅——《大话处理器》新书出炉
  8. [转]Windows Shell编程 第十五章【来源:http://blog.csdn.net/wangqiulin123456/article/details/7988016】...
  9. 一样是图标设计,UI 小白应该和老司机学的上手技能,临摹!
  10. 2021年已经过去了4天,创业者、负债累累而希望通过再创业实现东山再起者,你们准备的怎么样了?
  11. Android Bitmap 载入与像素操作
  12. 类数组变量定义与初始化
  13. 自动化测试工具Selenium Appium
  14. CAD插件学习系列教程(一) 贱人工具箱的使用
  15. python用Selenium爬取携程网机票信息
  16. 手机设置邮箱无法验证服务器失败,用手机邮箱设置怎么总显示无法验证帐户信息...
  17. Webstorm查找替换快捷键
  18. 2022版完整版web前端学习路线图(超详细自学路线)
  19. FA(萤火虫算法)MATLAB源码详细中文注解
  20. MySQL在RR级别下到底有没有修复幻读

热门文章

  1. 彻底理解flex弹性布局,看这一篇就够了!
  2. Java查看以及修改JVM参数
  3. Squire编辑器源码解读
  4. CentOS7云服务器防火墙的配置
  5. 系统属性由于启动计算机时,windows8开机弹出系统属性quot;由于启动计算机时出现了页面文件...
  6. 安全(二)— 为什么使用 MD5 存储密码非常危险
  7. [益智]:镜像对称问题
  8. Cocos Creator 键盘事件处理
  9. [CF1799F] Halve or Subtract 题解
  10. MYSQL练习题:每篇文章同时刻最大在看人数