首页 > 其他分享 >CPU各寄存器的作用

CPU各寄存器的作用

时间:2022-12-01 12:04:07浏览次数:44  
标签:Segment Register 寄存器 堆栈 其值 CPU 作用 指针

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),其值为附加数据段的段值

标签:Segment,Register,寄存器,堆栈,其值,CPU,作用,指针
From: https://blog.51cto.com/u_15834343/5901502

相关文章

  • 浅析故障电弧探测器在电气防火中的作用与应用介绍
    安科瑞陈盼【摘要】: 分析了重大电气火灾数据。结合目前国内前沿的电气火灾探测技术,重点介绍了故障电弧式电气火灾监控探测器在火灾预警系统中的重要作用,给出了基于多种探测......
  • 数据采集有什么作用
    数据采集是通过数据采集器来实现的。网页数据采集其实是一种可以影响各行各业的产业,发展到现在,它有着广泛的用途,这里列举一些比较常见的用途,当然他的用途不止这些,要列举的很......
  • 程序员学习 CPU 有什么用?
    本文已收录到AndroidFamily,技术和职场问题,请关注公众号[彭旭锐]提问。前言大家好,我是小彭。在上一篇文章里,我们聊到了计算机的冯·诺依曼架构,以及计算机的五大部件......
  • 这回终于把Java类中Serialversionuid 作用讲的明明白白了
    实现Serializable接口的目的是为类可持久化,比如在网络传输或本地存储,为系统的分布和异构部署提供先决条件。若没有序列化,现在我们所熟悉的远程调用,对象数据库都不可能存在,......
  • java获取电脑cpu,系统相关信息,jvm,文件盘符相关信息
    1.准备cpu,jvm,文件盘符实体类packagecom.joolun.framework.web.domain.server;importjava.lang.management.ManagementFactory;importcom.joolun.common.utils.Arit......
  • 硬件路灯第一期CPU篇
    CPU,centralprocessingunit,也就是中央处理器,如果计算机是一个人的话,CPU就是他的大脑我们近下来会科普CPU的几大参数1.主频假设CPU是建筑工地的话,主频相当于工人们搬砖的......
  • 遭遇流氓软件 CPUSH
    遭遇流氓软件CPUSHendurer原创2007-08-01第1版刚才一位网友说他的电脑中了病毒,瑞星清除后重启电脑又出现了,让偶通过QQ远程协助。检查瑞星的杀毒记录,原来是CPUSH这个流......
  • 解决Explorer.exe频繁占用大量的CPU
    前言不止从何时开始,本人电脑系统的Windows资源管理器(Explorer.exe)频繁占用大量cpu资源,导致系统卡顿。最开始觉得是系统文件损坏或者驱动文件的问题,但用sfc/scannow检测......
  • 获取windows内存、cpu及进程的信息
    如题,想获取进程信息用于资源显示,在这个过程中遇到很多问题,看来需要了解下windows里面的东西才行。记录目前遇到的问题,不断更新直到解决。头文件需要#include<TlHelp32.h......
  • OpenStack跨CPU热迁移失败处理
    1.注释libvirt的CPU检测代码所有计算节点vim/usr/lib/python3/dist-packages/nova/virt/libvirt/driver.py'''9342#try:9343#ifnotins......