一.引言 我们知道在Java中有虚拟机,代码运行时虚拟机把Java语言编译成与机器无关的字节码,然后再把字节码编译成机器指令执行,那么在.NET中程序是如何运行的呢?其实运行原理是一样的,.NET中的虚拟机是CLR(公共语言运行时),无论是C#程序还是VB程序,首先会由CLR编译成与平台无关的中间语言IL, 然后由公共语言运行时(CLR)的(JIT)编译成机器代码,再由CPU去执行它.所以说.NET程序也是需要二次编译才能运行. IL/MSIL (Microsoft Intermediate L…