当我为C#项目使用Visual Studio 2012的反汇编窗口时,我希望看到IL代码。但它显示x64程序集。这是由抖动引起的吗?下面的程序集是反汇编代码的一部分。
public static void Main() {
00000000 sub rsp,1C8h
00000007 xor eax,eax
00000009 mov qword ptr [rsp+60h],rax
0000000e mov qword ptr [rsp+58h],rax
00000013 mov qword ptr [rsp+50h],rax
00000018 mov qword ptr [rsp+38h],rax
0000001d mov qword ptr [rsp+30h],rax
00000022 mov qword ptr [rsp+28h],rax
00000027 mov qword ptr [rsp+20h],rax
0000002c xor eax,eax
0000002e mov dword ptr [rsp+4Ch],eax
00000032 mov dword ptr [rsp+48h],eax
00000036 mov dword ptr [rsp+44h],eax
0000003a mov dword ptr [rsp+40h],eax
0000003e mov rax,7F8786239C0h
00000048 mov eax,dword ptr [rax]
0000004a test eax,eax
0000004c je 0000000000000053
0000004e call 000000005FA4647C
汇编窗口查看直接在处理器上运行的代码。因此,它将显示汇编程序而不是IL。
如果您想查看C#方法的原始IL,请查看ild
当前的C#.NET调试器始终显示方法的本机代码(至少对于x86和x64)。这是JIT从IL生成的代码。如果您想查看IL中的方法,我建议查看ILSpy。
#include <stdio.h> void fun1(void) { int i = 0; i++; i = i * 2; printf("%d\n", i); } void fun2(void) { int j = 0; fun1(); j++; j = j
我正在使用Linux并试图学习OpenGL。我参考了learnopengl.com网站,并在这里编译了第一个可用的程序。 我似乎在编译程序时没有遇到命令问题 但是当我运行程序时,它会从后面显示东西,而不是像这样的空白窗口 但是请注意,此窗口不透明,因为如果我移动窗口,背景是相同的。但是,如果我最小化并重新打开窗口,则背景是新创建的。专用和集成 GPU 都会发生这种情况。 我需要做什么才能使它正常工
我正在查看英特尔提供的指令的参考实现。页面是英特尔数字随机数生成器(DRNG)软件实现指南,代码来自英特尔数字随机数生成器软件代码示例。 以下是英特尔的相关部分。它读取一个随机值并将其置于val中,并在成功时设置进位标志。 索里不得不问。我认为GNU Extended Assembler并没有涵盖它,搜索“=qm”会产生虚假的点击。 扩展汇编器中的是什么意思?
为了更好地理解编译器,特别是汇编语言,我一直在实验一段简单的代码,其中计算第一个数字的总和,这应该导致或. 如代码所示,有两个功能: 在第一个函数中,I从O循环到N,即
我是Java新手,正在尝试在NetBeans中运行Java awt/javax.swing应用程序。以下是github链接。 在我按下run之后,即使Netbeans一直在其窗口中显示,并且Java application图标下出现了一个圆点,也没有真正发生任何事情(实际上没有打开Java application窗口,我知道情况是这样的,因为当我用鼠标单击Java application图标时,没