msil(microsoft intermediate language)微软的中间语言。和java的虚拟机类似,是与cpu无关的指令集。当编译为托管代码时,编译器将源代码翻译为msil,
如上图所示。msil 包括用于加载、存储和初始化对象以及对对象调用方法的指令,还包括用于算术和逻辑运算、控制流、直接内存访问、异常处理和其他操作的指令。在可以执行代码前,必须将 msil 转换为 cpu 特定的代码,这通常是通过实时 (jit) 编译器完成的。由于公共语言运行库为它支持的每种计算机结构都提供了一种或多种 jit 编译器,因此可以在任何受支持的结构上对同一组 msil 进行 jit 编译和执行。这样总结上面的就是:中间语言是一组独立于cpu的指令集,它可以被即时编译器jitter翻译成目标平台的本地代码。