64位x86_64汇编相对32位x86汇编的变化

1.寄存器的变化

32位的EAX、EBX、ECX、EDX、ESI、EDI、EBP、ESP扩展为64位的RAX、RBX、RCX......

引入8个新的寄存器:R8、R9、R10......R15

2.新的AMD64调用约定

linux:

使用system V调用约定,按以下顺序使用寄存器加载前6个参数:RDI、RSI、RDX、RCX、R8、R9。若参数大于6个,其余参数使用栈传递。

windows:

使用_fastcall调用约定,按以下寄存器顺序传递前4个参数:RCX、RDX、R8、R9,其余参数使用栈传递。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容