Для чего нужен файл IL, сгенерированный из .NET (с использованием MSIL assemblyr-ilasm.exe)? - PullRequest
3 голосов
/ 29 декабря 2011

Для чего используется файл IL, сгенерированный из .NET (с использованием MSIL assemblyr-ilasm.exe)?

Я прочитал его из http://msdn.microsoft.com/en-us/library/496e4ekx.aspx, но я не уверен в использовании ILфайл, сгенерированный из .NET (с использованием MSIL-ассемблера ilasm.exe).Кто-нибудь может мне объяснить?

Ответы [ 2 ]

6 голосов
/ 29 декабря 2011

Возможно, вы захотите использовать IL напрямую в тех (по общему признанию) ситуациях, когда язык более высокого уровня, такой как C #, не обеспечивает точности или функций, которые вам нужны.

Например, в System.Dynamic есть некоторые функции, которые используются в динамических языках, таких как IronPython, которые нелегко использовать в C #. Переход к IL может помочь в тех ситуациях, когда вам нужно смешивать языки, например, для сторонней библиотеки.

С другой стороны, дизассемблирование в IL может быть очень полезным, так как вы можете точно определить, какой код генерирует компилятор для вашей программы на C #. Это бесценно, например, для микрооптимизации производительности.

5 голосов
/ 29 декабря 2011

ilasm.exe - MSIL Assembler - это Общий промежуточный язык Компилятор для собственного языка ассемблера .NET Framework (для краткости = CIL, IL или MSIL).

Этот инструмент создает исполняемые файлы путем компиляции исходных файлов сборки IL.Он не генерирует никаких «файлов IL».Противоположным является ildasm.exe - дизассемблер MSIL, который делает обратное: декомпилирует исполняемый файл .NET в его источник IL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...