什么是IL
2017-04-29 13:41
302 查看
IL又称CIL或者MSIL,中文就是中间语言,有ECMA组织(standard ECMA-335)提供完整的定义和规范。顾名思义任何和CLR兼容的编译器所生成的都是中间语言代码,这是实现CLR跨语言的基础结构之一。IL就像一座桥梁,其指令集独立于CPU指令而存在,可以由JIT编译器在运行时翻译为本地代码执行,链接了任何遵守CLS规范的高级语言,为.NET平台提供了最基础的支持。关于IL的基础内容:基本类型,IL分析方法,常见指令,基本运算符等。
IL是一种面向对象的机器语言,因此具有面向对象语言的所有特性,类,方法,属性,字段,多态,等任然是IL语言的基本概念。IL指令独立于cpu指令,CLR通过JIT编译机制将其转化为本地代码。
IL和元数据是了解CLR运行机制的重要内容。
CLR最终执行的只有本地机器码,所以JIT编译的作用是在运行时将IL代码解析为机器代码执行。
首先,IL是基于栈执行的,执行方法调用时,方法参数,局部变量还有返回值等被分配于栈上,并执行其调用过程,既然关注JIT编译时,我们自然关注将关注方法的执行,因为JIT编译是以执行方法调用而触发。
相关文章推荐
- 老赵谈IL(4):什么时候应该学IL,该怎么学IL
- 老赵谈IL(4):什么时候应该学IL,该怎么学IL
- 什么是.Net, IL, CLI, BCL, FCL, CTS, CLS, CLR, JIT
- 什么是.NET?什么是CLI?什么是CLR?IL是什么?JIT是什么,它是如何工作的?GC是什么,简述一下GC的工作方式?
- 老赵谈IL(1):IL是什么,它又不是什么?那么汇编呢?
- 什么是.NET?什么是CLI?什么是CLR?IL是什么?JIT是什么,它是如何工作的?GC是什么,简述一下GC的工作方式?
- 老赵谈IL(1):IL是什么,它又不是什么?那么汇编呢?
- (转)什么是.NET?什么是CLI?什么是CLR?IL是什么?JIT是什么,它是如何工作的?GC是什么,简述一下GC的工作方式?
- 什么是.NET?什么是CLI?什么是CLR?IL是什么?JIT是什么,它是如何工作的?GC是什么,简述一下GC的工作方式?
- [收藏]什么是爱情
- 什么是WBS ?
- 什么是 Internet Information Server(IIS)?
- ArcGIS 9.3.1将带来什么?
- 软件 SKU 指什么
- Web Service是什么?
- 计算机读研为了什么,为将来指明方向的一篇文章
- 什么是Toll-free bridging
- 我们都在什么时候能用到验证码识别软件?
- 商学院能学到什么
- int b ,(!!b)相当于什么?