x64架构相关学习
date: 2024/6/27 常规寄存器介绍 RAX: 累加寄存器,常用于存放函数返回值。 RBX: 基址寄存器,通常用于在需要保持函数调用前后状态不变的情况下存储数据。 RCX: 计数寄存器,通常用作第一个整数参数传递给函数。 RDX: 数据寄存器,通常用作第二个整数参数传递给函数。 RSI: 源索引寄存器,常用于字符串和数组操作,指向源的位置。 RDI: 目的索引寄存器,常用于字符串和数组操作,指向目的的位置。 RBP: 基指针寄存器,用于指向当前函数栈帧的基址。 RSP: 堆栈指针寄存器,指向当前堆栈的顶部,是最重要的寄存器之一,用于追踪函数调用堆栈。 R8 - R9: 用作额外的整数参数传递(第三和第四参数)。 R10 - R11: 通常用于特定的函数调用和系统调用,或者由编译器用作临时寄存器。 R12 - R15: 这些是可供程序自由使用的额外通用寄存器,通常用于在函数调用过程中保持其值不变。 RIP:指向当前或下一个条执行的指令…