使用 mono 查看 Linux 上的 C# 代码 CIL



我想检查Linux上以下C#源文件的生成CIL代码:

using System;
namespace PrintPrimes
{
class Algorithm
{
static bool IsPrime(int p)
{
for (int i=2;i<p;i++)
{
for (int j=i;j<p;j++)
{
if (i*j == p)
{
return false;
}
}
}
return true;
}
static void Main() 
{
for (int p=2;p<=20;p++)
{
if (IsPrime(p))
{
Console.WriteLine(p + " ");
}
}
}
}
}

当我编译并运行它时,一切都很好:

$ mcs -out:PrintPrimes PrintPrimes.cs
$ ./PrintPrimes
2 
3 
5 
7 
11 
13 
17 
19 

但是,如何获得人类可读的 CIL 输出?

单声道反汇编器,从程序集中提取 IL 代码:

monodis FILE-name

完整的参考资料可以在这里找到: https://www.mono-project.com/docs/tools+libraries/tools/monodis/

拆/组装CIL代码(单声道项目(

相关内容

  • 没有找到相关文章

最新更新