相关疑难解决方法(0)

C#64位版本代码的反汇编视图比32位调试代码长75%?

编辑

我测试了32位的版本,代码很紧凑.因此,下面是64位问题.


我正在使用VS 2012 RC.调试是32位,Release是64位.下面是调试然后发布一行代码的反汇编:

         crc = (crc >> 8) ^ crcTable[((val & 0x0000ff00) >> 8) ^ crc & 0xff];
0000006f  mov         eax,dword ptr [ebp-40h] 
00000072  shr         eax,8 
00000075  mov         edx,dword ptr [ebp-3Ch] 
00000078  mov         ecx,0FF00h 
0000007d  and         edx,ecx 
0000007f  shr         edx,8 
00000082  mov         ecx,dword ptr [ebp-40h] 
00000085  mov         ebx,0FFh 
0000008a  and         ecx,ebx 
0000008c  xor         edx,ecx 
0000008e  mov         ecx,dword ptr ds:[03387F38h] 
00000094  cmp         edx,dword ptr [ecx+4] 
00000097  jb          0000009E 
00000099  call        6F54F5EC 
0000009e  xor         eax,dword ptr [ecx+edx*4+8] 
000000a2  mov         dword …
Run Code Online (Sandbox Code Playgroud)

c# compiler-construction assembly disassembly visual-studio-2012

5
推荐指数
1
解决办法
804
查看次数