x86汇编中CALL指令的底层机制
汇
楼主
2026/08/12 15:10
4500
0
CALL指令看似简单,但其底层行为涉及栈操作、特权级切换和多种寻址模式。本文梳理几个容易混淆的点:
- 近调用vs远调用:保护模式下几乎只用近调用(CALL rel32/r32),远调用涉及CS选择子
- 栈帧建立:CALL压入EIP后,被调函数通常执行PUSH EBP; MOV EBP, ESP建立栈帧
- 调用约定:cdecl(调用者清栈)、stdcall(被调者清栈)、fastcall(ECX/EDX传参)的区别
- 间接调用:CALL [EAX]用于虚函数表和函数指针,是逆向分析的重点
理解这些机制对于编写shellcode、分析恶意软件和开发操作系统内核都至关重要。
回复列表 (0)
发表回复
写下你的回复...