问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

哪些寄存器程序员可访问

发布网友 发布时间:2022-04-21 19:30

我来回答

2个回答

热心网友 时间:2022-05-24 17:16

不同架构的CPU寄存器是不一样的,即使是同一架构,不同型号的CPU也有差别。这里以80386的CPU为例,寄存器分为6类。其中可供应用程序员使用的为通用寄存器(EAX、EBX、ECX、EDX、ESP、EBP、ESI、EDI)、段寄存器(CS、DS、SS、ES、FS、GS)和标志和控制寄存器(EIP、EFLAGS)。

可以指定任何通用寄存器的内容作为操作数的地址,以及在形成地址的过程中作如加法或减法这样简单的算术运算。但像串的运算和双精度的乘法和除法操作这类较复杂的操作,必须要从固定的寄存器中取一个或多个操作数。

寄存器的特点:

在集成电路设计中,寄存器可分为电路内部使用的寄存器和充当内外部接口的寄存器这两类。内部寄存器不能被外部电路或软件访问,只是为内部电路的实现存储功能或满足电路的时序要求。而接口寄存器可以同时被内部电路和外部电路或软件访问,CPU中的寄存器就是其中一种,作为软硬件的接口,为广泛的通用编程用户所熟知。

CPU中至少要有六类寄存器:指令寄存器(IR)、程序计数器(PC)、地址寄存器(AR)、数据寄存器(DR)、累加寄存器(AC)、程序状态字寄存器(PSW)。这些寄存器用来暂存一个计算机字,其数目可以根据需要进行扩充。

以上内容参考:

百度百科-内存资料寄存器

热心网友 时间:2022-05-24 17:16

1、数据寄存器
数据寄存器主要用来保存操作数和运算结果等信息,从而节省读取操作数所需占用总线和访问存储器的时间。
2、变址寄存器
32位CPU有2个32位通用寄存器ESI和EDI。其低16位对应先前CPU中的SI和DI,对低16位数据的存取,不影响高16位的数据。
寄存器ESI、EDI、SI和DI称为变址寄存器(Index Register),它们主要用于存放存储单元在段内的偏移量,用它们可实现多种存储器操作数的寻址方式,为以不同的地址形式访问存储单元提供方便。变址寄存器不可分割成8位寄存器。作为通用寄存器,也可存储算术逻辑运算的操作数和运算结果。它们可作一般的存储器指针使用。在字符串操作指令的执行过程中,对它们有特定的要求,而且还具有特殊的功能。
3、指针寄存器
32位CPU有2个32位通用寄存器EBP和ESP。其低16位对应先前CPU中的SBP和SP,对低16位数据的存取,不影响高16位的数据。
寄存器EBP、ESP、BP和SP称为指针寄存器(Pointer Register),主要用于存放堆栈内存储单元的偏移量,用它们可实现多种存储器操作数的寻址方式,为以不同的地址形式访问存储单元提供方便。指针寄存器不可分割成8位寄存器。作为通用寄存器,也可存储算术逻辑运算的操作数和运算结果。
它们主要用于访问堆栈内的存储单元,并且规定:
BP为基指针(Base Pointer)寄存器,通过它减去一定的偏移值,来访问栈中的元素;

SP为堆栈指针(Stack Pointer)寄存器,它始终指向栈顶。

说明:因栈的生长方向是从高地址向低地址生长,所以,进栈时,sp自减;出栈时,sp自增;
4、段寄存器
段寄存器是根据内存分段的管理模式而设置的。内存单元的物理地址由段寄存器的值和一个偏移量组合而成
的,这样可用两个较少位数的值组合成一个可访问较大物理空间的内存地址。
5、指令指针寄存器
32位CPU把指令指针扩展到32位,并记作EIP,EIP的低16位与先前CPU中的IP作用相同。
指令指针EIP、IP(Instruction Pointer)是存放下次将要执行的指令在代码段的偏移量。在具有预取指令功能的系统中,下次要执行的指令通常已被预取到指令队列中,除非发生转移情况。所以,在理解它们的功能时,不考虑存在指令队列的情况。
在实方式下,由于每个段的最大范围为64K,所以,EIP中的高16位肯定都为0,此时,相当于只用其低16位的IP来反映程序中指令的执行次序。
6、标志寄存器
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
考研可以查试卷的各题得分吗 如何看到自己的考研试卷 考研成绩可以查各题得分吗 原神机关棋谭双风双岩队伍怎么玩_机关棋谭双风双岩队伍推荐 原神双风阵容怎么搭配 原神魈双风阵容怎么搭配-魈双风阵容搭配推荐 Java有发展潜力还是C#有发展潜力 兴智联和电信什么关系 玫瑰花酱做法二 武汉兴智联科技服务有限公司怎么样 汇编程序中,程序员可以访问的寄存器? A程序计数... 汇编语言中什么指令是程序员能访问的? 微信里的通讯录同步助手怎么使用方法? 微信里的通讯录同步助手怎么使用方法 怎样把微信通讯录导入手机通讯录同步助手? 苹果手机和安卓手机不能通过QQ面对面快传吗 如何把华为手机的通讯录和微信同步? 怎样把微信通讯录导入手机通讯录同步助手 在全民k歌里面怎样设置来只要你有动态所有的人都知道 怎么做全民k歌动态图片,求助 全民k歌里如何把动态转成作品 全民K歌里转发动态是啥意思呢? 全民k歌动态里的推荐是什么意思? 全民K歌名字旁怎么设置更多的小图标或动图 全民k歌里为什么好友发了作品在动态看不见 手机qq6.3.3聊天背景怎么设置 小米手机QQ聊天的背景怎么设置成和所有人聊天的时... 全民k歌网名上的动态图是怎么弄的 全民k歌来自个人动态什么意思? 怎样将qq上的聊天背景设为手机壁纸 程序员一般按照什么模式访问数据库 A.外模式B.内模... 嵌入式系统经常具有要求程序员去访问某特定的内存... 骨头炖淮山怎么做好吃 女程序员到底有没有被歧视 筒骨炖山药顺序 ARM处理器的寄存器都是程序员可访问的吗? cache能由程序员直接访问吗? 骨头淮山汤的做法 我需要两个程序员让我采访,就是几个问题而已。 排骨炖淮山怎么做好吃 程序员能通过什么技术查看朋友圈“访客”? 大骨头炖什么好吃又有营养 程序员利用专业优势恶意偷窥个人聊天记录如何解决 排骨炖山约和王米的做法 山药炖排骨有什么营养 做程序员需要什么条件? 排骨炖怀山的做法,排骨炖怀山怎么做好吃,排骨 坐月子满一个月后可以吃羊骨头炖山肴吗 系统程序员,主要学会那些技能,如何做好一个系统... 筒骨炖淮山好吗