IA-32(Intel Architecture 32位)寄存器小结

本文详细介绍了IA-32架构中的通用寄存器,如EAX、EBX、ECX、EDX、ESI、EDI、EBP和ESP的作用;段寄存器CS、DS、SS、ES、FS、GS的功能;程序状态与控制寄存器EFLAGS的标志位;以及指令指针寄存器EIP的工作原理。
摘要由CSDN通过智能技术生成

这里简单记录一下各个寄存器的基本内容。

一、通用寄存器:

用于传送和暂存数据,参与算数逻辑运算并保存运算结果。IA-32每个通用寄存器的大小都是32位,即4个字节,主要用来保存常量和地址等信息。

以下4个通用寄存器主要用于算术运算如ADD、SUB、XOR、OR等,常用于保存常量与变量的值。

EAX:(针对操作数和结果数据的)累加器,一般用在函数返回值中,所有Win32 API函数都会把返回值保存到EAX后再返回。EAX寄存器又分为高、低几个独立的寄存器,AX(0-15)为EAX(0-31)的低16位独立寄存器,而AX又分为高8位的AH(8-15)和低8位的AL(0-7)两个独立寄存器,下面的EBX、ECX和EDX同理。

EBX:(DS段中的数据指针)基址寄存器。

ECX:(字符串和循环操作的)计数器,如在循环命令LOOP中用来循环计数、每执行完一次循环ECX就自减一。

EDX:(I/O指针)数据寄存器。


以下4个通用寄存器主要用于保存内存地址的指针。

ESI:(字符串操作源指针)源变址寄存器。

EDI:(字符串操作目标指针)目的变址寄存器,ESI和EDI与特定指令(LODS、STOS、REP、MOVS等)一起使用,主要用于内存复制。

EBP:(SS段中栈内数据指针)扩展基址指针寄存器,表示栈区域的基地址,即指向栈最上面的一

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值