【汇编】寄存器的分类

1.寄存器的分类:

通用寄存器:数据寄存器、指针寄存器、变址寄存器

(1)数据寄存器

数据寄存器主要用来保存操作数和运算结果等信息,从而节省读取操作数所需占用总线和访问存储器的时间。

 32位CPU有4个32位的通用寄存器EAX(累加器)、EBX(基址寄存器)、ECX(计数寄存器)、EDX(数据寄存器)。

16位:AX(累加器)、BX(基址寄存器)、CX(计数寄存器)、DX(数据寄存器)。

8位:AH、AL、BH、BL、CH、CL、DH、DL 8位寄存器,只能存放8位数据,不能存放地址。(AH对应AX的高8位、AL对应AX的低8位,AX对应EAX的低16位)

(2)指针寄存器

32位:EBP、ESP。

 EBP为基指针寄存器,用它可直接存取堆栈中的数据。

 ESP为堆栈指针寄存器,用它只可访问栈顶

16位:BP(基址指针寄存器)、SP(堆栈指针寄存器)。

(3)变址寄存器

32位:ESI(源变址寄存器)、EDI(目的变址寄存器)。主要用于存放存储单元在段内的偏移量。

16位:SI(源变址寄存器)、DI(目的变址寄存器)。


(4)段寄存器

32位:ECS(代码段寄存器)、 EDS(数据段寄存器)、 ESS(堆栈段寄存器)、                            EES(附加段寄存器)、EFS(附加段寄存器)、EGS(附加段寄存器)。

16位:CS(代码段寄存器)、DS(数据段寄存器)、SS(堆栈段寄存器)、ES(附加段寄存器)。

(5)指令指针寄存器

32位:EIP。

16位:IP。

指令指针EIP、IP是存放下次将要执行的指令在代码段的偏移量

(6)标志寄存器flag

标志寄存器也称程序状态字寄存器。 

16位:状态标志共6位,CF、PF、AF、ZF、SF和OF。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值