`
lobin
  • 浏览: 431971 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论
阅读更多

 

 

 

寄存器

寄存器是CPU内部提供的一些很小的且有限个的用于临时存放数据的存储单元。

80386总共有16个寄存器,包括8086的14个寄存器以及新增的FS,GS这两个附加段寄存器。

 

通用寄存器

通用寄存器主要包括各类数据寄存器,如EAX,EBX,ECX和EDX,以及变址寄存器,栈指针寄存器和基址指针寄存器。

 

EAX,EBX,ECX,EDX

兼容AX,BX,CX,DX以支持8086和80286,同时还可以将这些寄存器分成高8位和低8位,所以可以扩展为AH,AL,BH,BL,CH,CL,DH,DL 8个寄存器。

 

EAX表示累加器寄存器

EBX表示基址寄存器

ECX表示计数器寄存器

EDX表示数据寄存器

 

变址寄存器

SI/ESI,DI/EDI

SI/ESI表示源变址寄存器

DI/EDI表示目的变址寄存器

 

栈指针寄存器

SP/ESP

 

基址指针寄存器

BP/EBP

 

段寄存器

除了8086支持的CS,DS,SS,ES这几个段寄存器, 新增了2个段寄存器,这两个寄存器都是附加段寄存器

FS: 标志段寄存器

GS: 全局段寄存器

虽然这两个段寄存器都是附加段寄存器,但相对ES附加段寄存器,FS,GS还可以用作其他用途。

 

expand-up or an expand-down segment

这里指的是向上扩展或者向下扩展段

 

 

控制寄存器主要包括指令指针寄存器和标志寄存器

指令指针寄存器

IP/EIP

 

标志寄存器

EFLAGS

兼容FLAGS(EFLAGS低16位)以支持8086和80286

 

其中的每一位都表示一个标志,这些标志位分为3组:状态标识(status flags), 控制标志(control flags)以及系统标志(systems flags)。




 

 

 

0
1
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics