www.6677365.com

当前位置: 主页 > 日博赌场 >

OD中的某些符号是什么意思?

更新时间:2019-10-25 20:32 来源:admin 作者:365bet娱乐在线 点击:
以下数据源收集网络并不代表我的观点:eax,ebx,ecx,edx,esi,edi,ebp,esp等是汇编语言X86 CPU上常用的记录名称。这是一个32位寄存器。
使用C语言描述时,这些记录可以视为变量。
示例:addeax,-2; //您可以考虑将-2的值添加到变量eax。
这些32位寄存器有许多用途,但每个都有一个“种子”并具有自己的特殊特性。
EAX是累加器,并且是许多求和指令的默认记录。
EBX是基址寄存器,用于在内存地址存储时存储基址。
ECX是计数器,并且是重复前缀(REP)和LOOP指令的默认计数器。
EDX始终用于放置整数除法的其余部分。
ESI / EDI分别称为起点/终点索引。这是因为在许多字符串操作指令中,DS:ESI指向源链,而ES:EDI指向目标链。
EBP是基本指针(BASEPOINTER),最常用作调用高级语言函数的框架指针。
解码时,通常可以看到标准功能的开始代码:
Pushebp;保存当前ebp
Movebp,特别是; EBP设置为当前堆栈的指针
Subesp,xxx;为临时函数变量保留xxx个字节。

这样,EBP构成了一个功能框架,原始EBP,返回地址和参数都位于EBP之上。
在EBP下是临时变量。
函数返回时,执行movep,ebp / popebp / ret。
ESP仅用作堆栈指针,并称为堆栈指针的顶部。堆栈的顶部是一个地址较小的区域。进入堆栈的数据越多,ESP越小。
在32位平台上,ESP一次减少4个字节。

上一篇:在哪里可以找到gh8976的车牌?
下一篇:没有了