鱼C论坛

 找回密码
 立即注册
查看: 96|回复: 0

学完不用就忘...

[复制链接]
发表于 7 天前 | 显示全部楼层 |阅读模式
9鱼币
        int a[5] = {1, 2, 3, 4, 5};
00DD13BE  mov         dword ptr [a],1
00DD13C5  mov         dword ptr [ebp-14h],2
00DD13CC  mov         dword ptr [ebp-10h],3
00DD13D3  mov         dword ptr [ebp-0Ch],4
00DD13DA  mov         dword ptr [ebp-8],5
        int *b;

        b = &a[3];
00DD13E1  lea         eax,[ebp-0Ch]
00DD13E4  mov         dword ptr ,eax
        printf("%d\n", b[-2]);
00DD13E7  mov         esi,esp
00DD13E9  mov         eax,dword ptr
00DD13EC  mov         ecx,dword ptr [eax-8]
00DD13EF  push        ecx  
00DD13F0  push        offset string "%d\n" (0DD573Ch)
00DD13F5  call        dword ptr [__imp__printf (0DD82BCh)]
00DD13FB  add         esp,8
00DD13FE  cmp         esi,esp
00DD1400  call        @ILT+310(__RTC_CheckEsp) (0DD113Bh)


调用函数这块看着 晕....
麻烦解释下
越详细越好


string "%d\n":
00DD573C  and         eax,66000A64h
00DD5741  add         byte ptr [edx],bh
00DD5743  add         byte ptr [eax+eax+64h],bl
00DD5747  add         byte ptr [eax+eax+5Ch],ah
00DD574B  add         byte ptr [esi],dh
00DD574E  arpl        word ptr [eax],ax
00DD5750  je          00DD5752
00DD5752  outs        dx,dword ptr [esi]
00DD5753  add         byte ptr [edi],ch
00DD5756  ins         byte ptr es:[edi],dx
00DD5757  add         byte ptr [ebx],dh
00DD575A  pop         esp  
00DD575B  add         byte ptr [ebx],ah
00DD575E  jb          00DD5760
00DD5760  je          00DD5762
00DD5762  pop         edi  
00DD5763  add         byte ptr [edx],ah
00DD5766  ins         byte ptr es:[edi],dx
00DD5767  add         byte ptr [eax+eax+5Ch],ah
00DD576B  add         byte ptr [ebx],dh
00DD576E  add         byte ptr gs:[eax+eax+66h],ch
00DD5773  add         byte ptr [edi],bl
00DD5776  js          00DD5778
00DD5778  cmp         byte ptr [eax],al
00DD577A  add         byte ptr ss:[eax+eax+63h],bl
00DD577F  add         byte ptr [edx],dh
00DD5782  je          00DD5784
00DD5784  pop         esp  
00DD5785  add         byte ptr [ebx],dh
00DD5788  jb          00DD578A
00DD578A  arpl        word ptr [eax],ax
00DD578C  pop         esp  
00DD578D  add         byte ptr [ebx],ah
00DD5790  jb          00DD5792
00DD5792  je          00DD5794
00DD5794  add         byte ptr gs:[eax],bh
00DD5798  add         byte ptr gs:[esi],ch
00DD579B  add         byte ptr [ebx],ah
00DD579E  add         byte ptr [eax],al
00DD57A0  add         byte ptr [eax],al
00DD57A2  add         byte ptr [eax],al
00DD57A4  add         byte ptr [eax],al
00DD57A6  add         byte ptr [eax],al
00DD57A8  add         byte ptr [eax],al
00DD57AA  add         byte ptr [eax],al
00DD57AC  add         byte ptr [eax],al
00DD57AE  add         byte ptr [eax],al
00DD57B0  add         byte ptr [eax],al
00DD57B2  add         byte ptr [eax],al
00DD57B4  add         byte ptr [eax],al
00DD57B6  add         byte ptr [eax],al


__imp__printf:
00DD82BC  mov         al,0ABh
00DD82BE  inc         edx  
00DD82BF  pop         esi  

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1

GMT+8, 2021-4-14 09:11

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表