總結一下.NET的編譯過程, 一般的高級編程語言會把代碼編譯成機器碼,也就是我們說的非托管代碼,執行在編譯它的電腦上。 而.NET編譯代碼的時候會把高級編程語言編譯成中間語言 運行在CLR(公共語言運行庫)上,也就是把代碼集成一個exe文件中, .NET 在編譯過程中 沒有直接編譯成CPU認識的代碼 ...
總結一下.NET的編譯過程,
一般的高級編程語言會把代碼編譯成機器碼,也就是我們說的非托管代碼,執行在編譯它的電腦上。
而.NET編譯代碼的時候會把高級編程語言編譯成中間語言 運行在CLR(公共語言運行庫)上,也就是把代碼集成一個exe文件中,
.NET 在編譯過程中 沒有直接編譯成CPU認識的代碼,而是編譯成了CLR所認識的代碼,這為跨平臺奠定了基礎。
比如我們在C語言中編寫的代碼要移植到C#中 C#中只要有響應的編譯器 這時候就能直接編譯從另一種語言編譯過來的CLR也就是exe文件。
總的來說,編譯過程就是把用戶看得懂的語言比如 Console.WriteLine("hello,world");編程成CLR認識的代碼也就是集成exe文件。
然後由CLR編譯成CPU所認識的0和1.
以上。