汇编的一些记忆点

32bit

1实际地址 = 段地址*16 + 偏移地址
2 寄存器的ADC是调用者保存 BSD是被调用者保存

汇编的一些记忆点
3 汇编中栈的调用过程
汇编的一些记忆点
ebp与esp一头一尾,中间就是目前的栈帧。
1,调用者
保存实际参数
call 保存好return addr 一般是下一条
2,被调用者
push ebp 保存当前ebp
mov esp ebp 将ebp变为最新的esp
保存 被调用者保存的寄存器
做事情
恢复寄存器
mov ebp esp 将esp变为栈首部
pop ebp
ret 将ip转回 调用者程序的下一行,也就是return addr

4 一般eax保存过程的返回值

64bit

1 很多寄存器不存在特殊用途了,比如ebp
汇编的一些记忆点
汇编的一些记忆点2
汇编的一些记忆点