Как сбросить ассемблер из исполняемого файла - PullRequest
0 голосов
/ 24 сентября 2011

У меня есть исполняемый файл, который я скомпилировал с C #, и я хотел бы выгрузить из него код в ассемблерном коде, есть ли инструменты для этого?Также возможно ли также создать исполняемый файл из сгенерированного ассемблера?

Ответы [ 2 ]

2 голосов
/ 24 сентября 2011

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

1 голос
/ 24 сентября 2011

C # не компилируется в машинный код, или, по крайней мере, компилятор Microsoft C # не компилируется в машинный код. Однако вы можете получить байт-код промежуточного языка в распечатке, подобной сборке, используя ildasm .

Кроме того, если вы хотите, чтобы CLR мог как раз вовремя скомпилировать ваш код C #, скомпилируйте его на язык ассемблера, используя Mono. Пример приведен на их сайте :

mono --aot program.exe

Затем вы можете использовать objdump -d для получения языка ассемблера, по крайней мере, на компьютере * nix / Mac или на компьютере Windows с Cygwin или MinGW.

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