X86寄存器

  • 8086 CPU中寄存器总共为14个:且均为16位(32位和64位均以16位为基础)
    • 14个寄存器:AX BX CX DX SP BP SI DI IP FLAG CS DS SS ES
    • 根据类型分
      • 通用寄存器
        • 数据寄存器:AX,BX,CX,DX
          • AX:累加寄存器,也称为累加器
          • BX:基地址寄存器
          • CX:计数器寄存器
          • DX:数据寄存器
        • 指针寄存器:SP和BP
          • SP:堆栈指针寄存器
          • BP:基指针寄存器
        • 变址寄存器:SI和DI
          • SI:源变址寄存器
          • DI:目的变址寄存器
      • 控制寄存器
        • IP:指令指针寄存器
        • FLAG:标志寄存器
      • 段寄存器
        • CS:代码段寄存器
        • DS:数据段寄存器
        • SS:堆栈段寄存器
        • ES:附加段寄存器

x86-64 的调用约定

x86-64 有16个64位寄存器,分别是:

rax,rbx,rcx,rdx,esi,edi,rbp,rsp,r8,r9,r10,r11,r12,r13,r14,r15

寄存器 描述
rax 作为函数返回值使用
rsp 栈指针寄存器,指向栈顶
rdi,rsi,rdx,rcx,r8,r9 依次用作函数参数;如果断点在 OC 方法的第一行,那 rdi 就是 self,rsi 就是 cmd
rbx,rbp,r10,r11,r12,r13,r14,r15 通用寄存器

results matching ""

    No results matching ""