MSIL是将.NET代码转化为
机器语言的一个中间过程。它是一种介于高级语言和基于Intel的汇编语言的伪汇编语言。当用户编译一个.NET程序时,
编译器将
源代码翻译成Microsoft
中间语言 (MSIL),它是一组可以有效地转换为本机代码且独立于CPU的指令。当执行这些指令时,实时(JIT)编译器将它们转化为CPU特定的代码.
所以,我们的.NET程序最终都是以这些中间语言存储起来的,在运行后,又由即时编译器直接转换成真正的机器语言执行. emit这种优势在于可以在程序动态运行的过程中,直接生成IL运行(可谓灵活且不失高效)