我在哪里可以找到x86寄存器名称?

And*_*yev 2 x86 assembly naming cpu-registers

哪里可以找到80x86注册的全名?我知道EAX意味着扩展AX.

那么,AX的含义是什么?即AX是首字母缩略词?

HBP*_*HBP 10

注册名称在过去40年中不断发展.1974年引入的英特尔8080处理器有8位寄存器,分别命名为A,B,C,D,E,H和L.通过E看起来相当明显但H和L?好吧,它们被组合成16位HL寄存器,主要用作存储器指针,因此H表示高电平,L表示低电平表.

1979年,英特尔发布了8086处理器(最初的IBM PC基于它的近亲8088).8086具有16位寄存器4"主"寄存器和4个索引寄存器.主寄存器被称为AX,BX,CX,DX,它们是8080 A至D的自然扩展,每个寄存器也可以被称为8位寄存器,称为AL,AH,BL,BH等.8086索引寄存器,也是16位,在它们的主要功能之后被称为SI,DI,BP和SP.索引和目的地索引的SI和DI,堆栈指针的SP和(堆栈)基指针的BP.

随着80386在1986年的引入,32位世界的扩展为我们带来了EAX,EBX,ECX,EDX,ESI,EDI,EBP和ESP,这些寄存器的32位变体,80386名称仍为(降低16位和8位访问以保持可塑性.

直到AMD将英特尔推向市场,定义64位扩展才有所作为.

值得注意的是,为8086处理器组装的二进制代码与所有成功的X86处理器兼容.

参考文献:

__PRE__

  • [为什么前四个 x86 GPR 的命名顺序如此不直观?](//retrocomputing.stackexchange.com/q/5121) 上的 Retrocomputing 详细介绍了如何设计 8086 寄存器以实现与 8080 的轻松 asm 源兼容性。 (2认同)