什么是专用寄存器?

时间:2011-04-30 06:34:37

标签: assembly x86 cpu-registers

什么是专用寄存器?

特殊目的寄存器的名称是什么,每个寄存器都有一些描述?

3 个答案:

答案 0 :(得分:3)

来自维基百科 - Processor register

  

专用寄存器(SPR)保持程序状态;它们通常包括程序计数器(也称为指令指针),堆栈指针和状态寄存器(也称为处理器状态字)。在嵌入式微处理器中,它们也可以对应于专用硬件元件。


  

通用寄存器(GPRs)可以存储数据和地址,即它们是数据/地址寄存器的组合。

答案 1 :(得分:3)

特殊用途寄存器,顾名思义,是专为任务设计的寄存器。例如,csdsgs和其他段寄存器属于专用寄存器,因为它们用于保存段的编号。 eaxecx等是通用目的寄存器,因为您可以将它们用于所有内容而不会(几乎)没有限制。例如,您不能mov es, ds,但可以mov eax, ebx 因此,x86上的通用寄存器是:

  • EAX
  • ECX
  • EDX
  • EBX
  • ESI
  • EDI
  • EBP

专用寄存器是:

  • CS
  • DS
  • SS
  • ES
  • FS
  • GS
  • EIP
  • 标志

我认为他们都在这里,但如果我忘记了一个发表评论;)
BTW this可能是一个很好的资源(第一个非维基百科google的“特殊用途寄存器x86”的结果)。

答案 2 :(得分:1)

我认为通过一点谷歌搜索你可以找到大量的资源。 但这是x86处理器的简短列表:

CS: Code Segement
IP: Instruction Pointer
SS: Stack Segment
SP: Stack Pointer

还有更多