社区
C语言
帖子详情
寄存器的地址与内存地址
LubinLew
2013-06-19 10:49:44
寄存器是有地址的这是没有异议的吧。
那么寄存器的地址是相对于CPU而言的吗?CPU中有一套自己的地址机制吗?
通常说的地址一般指的地内存地址。
如果往一个地址中写数据,那么CPU怎么识别是写寄存器还是写内存呢?
...全文
994
7
打赏
收藏
寄存器的地址与内存地址
寄存器是有地址的这是没有异议的吧。 那么寄存器的地址是相对于CPU而言的吗?CPU中有一套自己的地址机制吗? 通常说的地址一般指的地内存地址。 如果往一个地址中写数据,那么CPU怎么识别是写寄存器还是写内存呢?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
赵4老师
2013-06-20
打赏
举报
回复
在CPU内部,可以将寄存器看作有地址(试比较MOV EAX,10和MOV ECX,10这两条汇编指令对应字节的各二进制位的值),只不过这个地址和RAM内存地址是两回事而已。
ForestDB
2013-06-19
打赏
举报
回复
比如下面的单片机的地寄存器定义, 0x8n是什么? 堆栈指针; sfr DPL = 0x82; 数据指针低8位 sfr DPH = 0x83; 数据指针高8位 sfr PCON = 0x87; 电源控制 sfr TCON = 0x88; 定时器/计数器控制 sfr TMOD = 0x89; 这部分断行是不是有点问题? 应该是这样? sfr DPL = 0x82; 数据指针低8位 sfr DPH = 0x83; 数据指针高8位 sfr PCON = 0x87; 电源控制 sfr TCON = 0x88; 定时器/计数器控制 另外我们所说的寄存器无地址指的是CPU的寄存器,即ah,al这些通用寄存器,明显和LZ所说的不是同一种
日出东方然后不败
2013-06-19
打赏
举报
回复
从没有想过这个问题,看来我得加强计算机体系方面的理论学习了
橡木疙瘩
2013-06-19
打赏
举报
回复
从某种意义上来说,寄存器确实是有地址的,不过它们的地址不是一个完整的字节,而只是几个二进制位。 ADD EBX, 1 ADD ECX, 1 这两条语句生成的代码肯定不同,那么不同之处自然就是寄存器的地址。 不过计算机不需要去判断地址是寄存器还是内存,因为操作寄存器与操作内存的代码是不一样的。
LubinLew
2013-06-19
打赏
举报
回复
引用 2 楼 ForestDB 的回复:
寄存器是有地址的这是没有异议的吧。
有异议
谁告诉你的? 还是自己想的? 如果可能,学习下简单的数字电路。
比如下面的单片机的地寄存器定义, 0x8n是什么? 堆栈指针; sfr DPL = 0x82; 数据指针低8位 sfr DPH = 0x83; 数据指针高8位 sfr PCON = 0x87; 电源控制 sfr TCON = 0x88; 定时器/计数器控制 sfr TMOD = 0x89;
ForestDB
2013-06-19
打赏
举报
回复
寄存器是有地址的这是没有异议的吧。
有异议
谁告诉你的? 还是自己想的? 如果可能,学习下简单的数字电路。
baichi4141
2013-06-19
打赏
举报
回复
我承认我第一次听说“寄存器是有地址的”,所以提不出什么异议
寄存器
地址
和
内存
地址
的区别
同样,如果我们把外围设备的设备
地址
作为像内存的
地址
单元那样来看待,那么,当CPU和外围设备交换信息时,我们同样使用
地址
寄存器
和数据缓冲
寄存器
。
地址
寄存器
采用单纯的
寄存器
结构。内存指的是内存条、存储器,由于一半的硬盘读取速度很慢,所以用先将硬盘里面的东西读取到内存条里面,然后在给CPU进行处理,这样是为了加快系统的运行速度。
内存
地址
是一种用于软件及硬件等不同层级中的数据概念,用来访问电脑主存中的数据,即数据放在内存中的
地址
。
寄存器
地址
用来保存当前CPU所访问的内存单元的
地址
,即数据放在
寄存器
中的
地址
。
计算机内存和
寄存器
,
寄存器
和内存的区别
寄存器
和内存的区别1、
寄存器
是中央处理器内的组成部份。它跟CPU有关。
寄存器
是有限存贮容量的高速存贮部件,它们可用来暂存指令、数据和位址。在中央处理器的控制部件中,包含的
寄存器
有指令
寄存器
(IR)和程序计数器(PC)。在中央处理器的算术及逻辑部件中,包含的
寄存器
有累加器(ACC)。2、内存既专业名上的内存储器,内存是由内存芯片、电路板、金手指等部分组成的。它包涵的范围也很大,一般分为只读存储器和随...
寄存器
地址
和
内存
地址
_x86汇编指南之
寄存器
与内存寻址模式
本指南描述了32位x86汇编语言编程的几个基础知识,主要介绍
寄存器
和内存寻址。有几种不同的汇编语言可用于生成x86机器代码,本文使用标准的Intel语法来编写x86汇编代码。
寄存器
如图1所示,现代(即386及更高版本)x86处理器有8个32位的通用
寄存器
。
寄存器
的名称大多是基于历史的命名而来。例如,EAX过去被称为累加器,因为它被大量用于算术运算;而ECX被称为计数器,因为它被用于保存循...
寄存器
PLC
地址
与
寄存器
modbus协议
地址
寄存器
PLC
地址
指存放于控制器中的
地址
,这些控制器可以是PLC,也可以使触摸屏,或是文本显示器。PLC
地址
一般采用10进制描述,共有5位,其中第一位代码
寄存器
类型。第一位数字和
寄存器
类型的对应关系如表1所示。PLC
地址
例如40001、30002等。
寄存器
modbus协议
地址
指通信时使用的
寄存器
地址
,在实际编程中,由于
寄存器
PLC
地址
前缀的区分作用,所以只需说明后4位数...
图解
寄存器
与内存
寄存器
与内存
寄存器
内存 初学单片机的时候,由于没有看过计算机相关的知识,很难理解
寄存器
是个什么东西。内存虽在生活中常常被提到,但一和
寄存器
放一块就显得有点混乱了。现在就用一张图来展示一下它们之间的关系。
寄存器
寄存器
是用于存储二进制数的逻辑部件,一个触发器可以存储1位二进制数据,存储N位二进制 CPU访问
寄存器
时,只要找到相关的位进行读取就可以了,所以访问速度是很快的。 内存 而CPU访问内存时,需要经历一系列过程,访问速度自然要比访问
寄存器
慢很多。首先 ...
C语言
70,020
社区成员
243,264
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章