Код: Выделить всё
public class HelloWorld
{
public static void Main()
{
System.Console.WriteLine("Hello World!");
System.Console.ReadLine();
}
}
Код: Выделить всё
C:\Windows\Microsoft.NET\Framework\v4.0.30319>csc /t:exe /out:C:\HelloWorld\HelloWorld.exe C:\HelloWorld\HelloWorld.cs
- Исходный код преобразуется в Common Intermediate Language (CIL), который в CLI является эквивалентом языка ассемблера для ЦП.
< li>Затем CIL собирается в форму так называемого байт-кода и создается сборка CLI. - После выполнения сборки CLI ее код передается через JIT-компилятор среды выполнения для генерации собственный код...
- Нативный код выполняется процессором компьютера.
Значит, сам файл .exe состоит исключительно из общего промежуточного языка? И является ли сам этот файл тем, что в статье в Википедии называется «сборкой CLI»? Я немного сбит с толку, потому что вижу только файл .exe, а для меня термин «сборка» подразумевает более одного файла.
И связанный с этим вопрос:
- есть ли JIT-компилятор где-то в Microsoft. NET, и после выполнения файла .exe файл связывается с JIT-компилятором, который затем выводит инструкции в собственном коде?
Подробнее здесь: https://stackoverflow.com/questions/177 ... common-int
Мобильная версия