MOV EAX,DWORD PTR SS:[EBP
答案:2 悬赏:70 手机版
解决时间 2021-02-26 20:48
- 提问者网友:皆是孤独
- 2021-02-26 07:37
MOV EAX,DWORD PTR SS:[EBP
最佳答案
- 五星知识达人网友:不想翻身的咸鱼
- 2021-02-26 08:19
x86环境访问栈就得用SS,这不是Windows一个软件能说了算的。dwordptr表示内存操作数是4个字节(Double-WORDPoinTeR,双字指针),还有wordptr表示2字节,byteptr表示一字节,qwordptr表示8字节。一般只有目标是内存源是即时数的时候才需要明确写出来:movdwordptr[eax],0因为不写的话根本判断不出来要写几个字节,编译器默认会处理成byteptr。
全部回答
- 1楼网友:掌灯师
- 2021-02-26 08:57
是从ss段的ebp+8这里开始,复制4个字节到eax寄存器。
在32位环境下,这一句一般是将函数第一个参数的值放到eax寄存器中。
楼上的写法应该是错误的,lea只负责加减乘除运算,没有取内容的用法。
你说的那句用nasm来写可以写成
mov eax,dword ptr [ebp + 8]
理由:ebp和esp默认是ss段,所以根本不用显式说明。eax,ebx,ecx,edx,edi,esi默认是ds段,eip默认是cs段。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯