有没有办法从C#代码生成汇编代码?我知道用GAS可以实现C代码的汇编,但是否有人知道是否能够用C#实现此功能?
有没有办法从C#代码生成汇编代码?我知道用GAS可以实现C代码的汇编,但是否有人知道是否能够用C#实现此功能?
[DisassemblyDiagnoser(printAsm: true, printSource: true)] // !!! use the new diagnoser!!
[RyuJitX64Job]
public class Simple
{
int[] field = Enumerable.Range(0, 100).ToArray();
[Benchmark]
public int SumLocal()
{
var local = field; // we use local variable that points to the field
int sum = 0;
for (int i = 0; i < local.Length; i++)
sum += local[i];
return sum;
}
[Benchmark]
public int SumField()
{
int sum = 0;
for (int i = 0; i < field.Length; i++)
sum += field[i];
return sum;
}
}
C#代码编译成MSIL(MS中间语言),这实际上并不是从C编译器获得的汇编代码。了解更多关于.NET Framework应用程序运行的信息。
如果你想查看生成的IL代码,请参考此问题。