系统会用到下面几种寄存器: 1.EIP 2.ESP 3.EBP。三者的作用。
1.EIP寄存器里存储的是CPU下次要执行的指令的地址。
2.EBP寄存器里存储的是是栈的栈底指针,通常叫栈基址,而这个地址是由ESP在函数调用前传递给EBP的。等到调用结束,EBP会把其地址再次传回给ESP。所以ESP又一次指向了函数调用结束后,栈顶的地址。
3.ESP寄存器里存储的是栈的栈顶。并且始终指向栈顶。
Eax – arithmetic, default location where division occurs (accumulator)是很多加法乘法指令的缺省寄存器。
Ebx – base index for arrays
Ecx – couner (used with the loop instruction)重复(REP)前缀指令和LOOP指令的内定计数器。
Edx – data/general 总是被用来放整数除法产生的余数。
Edi, esi – used as indices in string operations
Ebp – positive offsets are the arguments, negative offsets are the local variables
posted on 2011-11-27 23:15
鹰击长空 阅读(150)
评论(0) 编辑 收藏 引用