CPU各寄存器的作用 - [Asm]
寄存器作用:ebp和esp是32位的SP,BP
esp是堆栈指针
ebp是基址指针
ESP与SP的关系就象AX与AL,AH的关系.32位CPU所含有的寄存器有:4个数据寄存器(EAX、EBX、ECX和EDX)
2个变址和指针寄存器(ESI和EDI) 2个指针寄存器(ESP和EBP)
6个段寄存器(ES、CS、SS、DS、FS和GS)
1个指令指针寄存器(EIP) 1个标志寄存器(EFlags)寄存器AX和AL通常称为累加器(Accumulator),用累加器进行的操作可能需要更少时间。累加器可用于乘、除、输入/输出等操作,它们的使用频率很高;寄存器BX称为基地址寄存器(Base Register)。它可作为存储器指针来使用;寄存器CX称为计数寄存器(Count Register)。在循环和字符串操作时,要用它来控制循环次数;在位操作中,当移多位时,要用CL来指明移位的位数;寄存器DX称为数据寄存器(Data Register)。在进行乘、除运算时,它可作为默认的操作数参与运算,也可用于存放I/O的端口地址。寄存器ESI、EDI、SI和DI称为变址寄存器(Index Register),它们主要用于存放存储单元在段内的偏移量,用它们可实现多种存储器操作数的寻址方式,为以不同的地址形式访问存储单元提供方便。变址寄存器不可分割成8位寄存器。作为通用寄存器,也可存储算术逻辑运算的操作数和运算结果。它们可作一般的存储器指针使用。在字符串操作指令的执行过程中,对它们有特定的要求,而且还具有特殊的功能。寄存器EBP、ESP、BP和SP称为指针寄存器(Pointer Register),主要用于存放堆栈内存储单元的偏移量,用它们可实现多种存储器操作数的寻址方式,为以不同的地址形式访问存储单元提供方便。指针寄存器不可分割成8位寄存器。作为通用寄存器,也可存储算术逻辑运算的操作数和运算结果。它们主要用于访问堆栈内的存储单元,并且规定:BP为基指针(Base Pointer)寄存器,用它可直接存取堆栈中的数据;
SP为堆栈指针(Stack Pointer)寄存器,用它只可访问栈顶。CPU内部的段寄存器:CS——代码段寄存器(Code Segment Register),其值为代码段的段值;
DS——数据段寄存器(Data Segment Register),其值为数据段的段值;
ES——附加段寄存器(Extra Segment Register),其值为附加数据段的段值;
SS——堆栈段寄存器(Stack Segment Register),其值为堆栈段的段值;
FS——附加段寄存器(Extra Segment Register),其值为附加数据段的段值;
GS——附加段寄存器(Extra Segment Register),其值为附加数据段的段值

CPU各寄存器的作用相关推荐

  1. CPU各个寄存器作用

    程序员的代码最终的实现就是对寄存器和内存进行一些操作,知道CPU中各个寄存器的作用,能够对代码有更深刻的了解. 文章目录 CPU各个寄存器作用(8086): CS,IP bx,si,di,bp ss, ...

  2. java 中pc寄存器的作用_既然有PC寄存器,栈帧里的返回地址的作用是什么?

    PC寄存器存Java字节码的指令地址. 1. 返回地址的作用 方法A调用方法B的时候,PC寄存器会跟着移动到B方法去.当B执行完后,要能返回A继续执行,就需要A当时执行到的那条指令的地址.所以,在B的 ...

  3. java中pc寄存器的作用是什么_既然有PC寄存器,栈帧里的返回地址的作用是什么?...

    PC寄存器存Java字节码的指令地址. 1. 返回地址的作用 方法A调用方法B的时候,PC寄存器会跟着移动到B方法去.当B执行完后,要能返回A继续执行,就需要A当时执行到的那条指令的地址.所以,在B的 ...

  4. 【Android 逆向】Android 进程注入工具开发 ( 调试进程中寄存器的作用 | 通过 EIP 寄存器控制程序运行 | EIP 寄存器的存档与恢复 )

    文章目录 一.调试进程中寄存器的作用 二.通过 EIP 寄存器控制程序运行 三.EIP 寄存器的存档与恢复 一.调试进程中寄存器的作用 内存是一个线性结构 , 将动态库加载到内存中后 , 每个动态库文 ...

  5. 汇编中各寄存器的作用(16位CPU14个,32位CPU16个)和 x86汇编指令集大全(带注释)

    From:https://www.cnblogs.com/zimmerk/articles/2520011.html From:https://blog.csdn.net/bjbz_cxy/artic ...

  6. html5元件的作用,寄存器的作用是什么

    寄存器的作用是存储二进制代码,它是由具有存储功能的触发器组合起来构成的.一个触发器可以存储1位二进制代码,故存放n位二进制代码的寄存器,需用n个触发器来构成. 本文操作环境:windows10系统,L ...

  7. 计算机系统中CPU的寄存器介绍

    计算机寄存器分类简介: 32位CPU所含有的寄存器有: 4个数据寄存器(EAX.EBX.ECX和EDX) 2个变址和指针寄存器(ESI和EDI) 2个指针寄存器(ESP和EBP) 6个段寄存器(ES. ...

  8. EAX、ECX、EDX、EBX等寄存器的作用

    EAX.ECX.EDX.EBX等寄存器的作用 ★ 一般寄存器:AX.BX.CX.DX AX:累积暂存器,BX:基底暂存器,CX:计数暂存器,DX:资料暂存器 ★ 索引暂存器:SI.DI SI:来源索引 ...

  9. cpu,寄存器,控制器,运算器

    关于CPU 寄存器 CPU除了有控制器.运算器还有寄存器.其中寄存器的作用就是进行数据的临时存储. CPU的运算速度是非常快的,为了性能CPU在内部开辟一小块临时存储区域,并在进行运算时先将数据从内存 ...

最新文章

  1. 如何查看和关闭异常SQL进程
  2. 上周热点回顾(12.18-12.24)
  3. mysql自动转库_JAVA自动操作0racle数据库转mysql数据库
  4. el表达式的语法_「手把手教python3接口自动化」「第三章」:Python3 语法
  5. UI-UIButton、UILable、UITextField总结
  6. php 判断点在多边形内,PHP判断点是否在多边形区域内外
  7. es 根据_id查询_京东把 Elasticsearch 用得真牛逼!日均5亿订单查询完美解决
  8. android 漩涡动画,使用P5.js构造漩涡动画特效
  9. Android 编程下的计时器
  10. 软件开发javascript html实现网页版日历代码_javascript技巧
  11. 融资方案的商业计划书
  12. 【Protues仿真】PNP三极管驱动蜂鸣器和实际电路相同却不响问题探讨
  13. Open SQL LEFT与RIGHT函数
  14. 【HDOJ 5654】 xiaoxin and his watermelon candy(离线+树状数组)
  15. Improving Graph Collaborative Filtering with Neighborhood-enriched Contrastive Learning
  16. [electron]Electron安装报错connect ETIMEDOUT
  17. 分享靠写代码赚钱的一些门路
  18. 查看电脑已连接无线的密码
  19. 【BYM】Android 实现相机快门动画,android音视频何俊林
  20. 【C语言循环结构题目】在屏幕上打印n行*号倒三角形(此处n为6)

热门文章

  1. 信息学奥赛一本通 1411:区间内的真素数 | OpenJudge NOI 1.13 23:区间内的真素数
  2. 信息学奥赛一本通(2070:【例2.13】数字对调)
  3. 信息学奥赛一本通(1197:山区建小学)
  4. 信息学奥赛一本通(1046:判断一个数能否同时被3和5整除)
  5. 周末舞会(信息学奥赛一本通-T1332)
  6. 信息学奥赛一本通C++语言——1127:图像旋转
  7. 信息学奥赛一本通C++语言——1077:统计满足条件的4位数
  8. 26 MM配置-采购-采购申请-定义编码范围
  9. linux ls连接数,51CTO博客-专业IT技术博客创作平台-技术成就梦想
  10. Alex-Net网络总结