Обложка канала

C# 1001 notes

Регулярные короткие заметки по C# и .NET. Просто о сложном для каждого.

C# 1001 notes

8 лет назад
Открыть в
Что такое CIL (ранее MSIL) код и как его увидеть?

Common Intermediate Language (сокращённо CIL) — «высокоуровневый ассемблер» виртуальной машины .NET,- промежуточный язык, разработанный компанией Microsoft для платформы .NET Framework.

Все компиляторы, поддерживающие платформу .NET, транслируют код с языков высокого уровня на язык CIL (в среде разработки Visual Studio это C#, Managed C++, Visual Basic .NET).

Далее CIL код компилируется в native code с помощью JIT (just-in-time) компилятора, который и исполняется в CLR.

Так каким же образом можно увидеть CIL код?

В большинстве случаев для этого используется IL Disassembler (ildasm.exe), найти который можно по следующему пути:

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\x64

ildasm.exe позволяет увидеть:

🔶 Список всех классов и методов в вашей сборке (assembly)

🔶 Содержимое manifest сборки

🔶 IL code всех методов, реализованных в сборке

На деле это выглядит следующим образом.

Подробнее про CIL код и процесс исполнения можно почитать на MSDN - Managed Execution Process.

Понравилась заметка? Тогда поделись ей с другими 😉

#assemblies