汇编代码的认识
寄存器:eax(累加器) ebx(基地址) ecx(计数器) edx(余数)
pc(下一行指令地址寄存器)
EAX 是"累加器"(accumulator), 它是很多加法乘法指令的缺省寄存器。
EBX 是"基地址"(base)寄存器, 在内存寻址时存放基地址。
ECX 是计数器(counter), 是重复(REP)前缀指令和LOOP指令的内定计数器。
EDX 则总是被用来放整数除法产生的余数。
栈桢确定:栈底(EBP) 栈顶(ESP)
ret pop pc
Call两步:1.压入下一行指令地址2.调转被调用方
开栈过程:
- 压入实参,给形参初始化 自右向左
- 压下一行指令地址
- 压调用方栈底地址
- 跳转到被调用方函数栈桢
- 被调用方函数活动开辟空间