进入函数时的代码问题 求指点
debug版本
int main(){
push ebp
...
push ebx;功能?
push esi;功能?
push edi
请问这两个寄存器(ebx,esi)功能是什么 进入函数的代码好像也没用到..
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
holing ebx esi edi 这三个寄存器是要保存初始状态的,所以要修改的时候都必须要push保存然后函数退出的时候pop
WandererY 请问初始状态的值是干啥的 为什么要保存
holing 调用这个函数的函数可能在这些寄存器里面存了一些值并且假设调用一个函数不会改变他的值,所以调用的时候如果需要使用这些寄存器就必须要先保存在栈中,返回时还原