共2条
1/1 1 跳转至页
RAM 一般单片机内部资源中,寄存器和内部RAM有何区别?

问
从使用讲,很多MCU的RAM支持间接变址寻址,而寄存器好像不行,而且一般来说RAM会比reg多。
不知道我记得是否正确?
大家能帮忙补充或者指点一下吗?最好不仅从使用角度,而且能从MCU内部的结构原理上讲讲区别。
thanks 答 1: RE: 从结构说,寄存器是CPU核心资源,而内部RAM仅仅高速存储器;并且对寄存器操作时速度最快,对内部RAM操作速度远远不及寄存器。
从使用角度说,有关寄存器操作指令更多,基本上能够支持位操作,而内部RAM仅仅只有寄存器的少部分运算,这在精简指令集CPU中更为明显。 答 2: 电子小虫不是高手吗?? 答 3: 结构上没有什么不同51系列单片机寄存器和内部RAM就是一回事。
不过访问RAM速度一般比较慢,这是指令的问题,不是结构的问题。 答 4: 从一般原理上说,寻址方式不同寄存器数量少,具有特殊性,如某些指令的操作寄存器是“隐含”的,而且是固定的
例如PUSH/POP指令隐含了对SP的操作,许多运算指令隐含了对状态寄存器(51为PSW)的操作
而RAM数量大,寻址是“一视同仁”的,任何一个单元,都是由地址确定的
总之,寄存器是特务,为特殊任务服务,RAM是士兵,为一般任务服务 答 5: 顶一下。“总之……”说得好。不过不一定人人都能领会哦。
a12345678 也说得不错。
物理结构上可以认为寄存器和存储器是一样的。但是它们的可用操作方式有明显不同。
寄存器单元可以工作在触发、计数和锁存等多种操作方式。(74LS74,经典了吧?用74系列搭个CPU看看就好理解了。)具体如何操作得看指令译码器和时序控制器。
存储器操作是根据CPU当前行为来进行,MEMO读写指令只产生MEMO读写控制信号,译码是由地址决定。操作方式只有锁存一种。
要对存储器某个地址进行位操作,则要通过寄存器完成。对于CPU核心来说,RAM始终是外部的。REG才是内部的。
答 6: 嗯,获益不少,仔细体会各位的发言中。交流是学习的有效路径阿。
不知道我记得是否正确?
大家能帮忙补充或者指点一下吗?最好不仅从使用角度,而且能从MCU内部的结构原理上讲讲区别。
thanks 答 1: RE: 从结构说,寄存器是CPU核心资源,而内部RAM仅仅高速存储器;并且对寄存器操作时速度最快,对内部RAM操作速度远远不及寄存器。
从使用角度说,有关寄存器操作指令更多,基本上能够支持位操作,而内部RAM仅仅只有寄存器的少部分运算,这在精简指令集CPU中更为明显。 答 2: 电子小虫不是高手吗?? 答 3: 结构上没有什么不同51系列单片机寄存器和内部RAM就是一回事。
不过访问RAM速度一般比较慢,这是指令的问题,不是结构的问题。 答 4: 从一般原理上说,寻址方式不同寄存器数量少,具有特殊性,如某些指令的操作寄存器是“隐含”的,而且是固定的
例如PUSH/POP指令隐含了对SP的操作,许多运算指令隐含了对状态寄存器(51为PSW)的操作
而RAM数量大,寻址是“一视同仁”的,任何一个单元,都是由地址确定的
总之,寄存器是特务,为特殊任务服务,RAM是士兵,为一般任务服务 答 5: 顶一下。“总之……”说得好。不过不一定人人都能领会哦。
a12345678 也说得不错。
物理结构上可以认为寄存器和存储器是一样的。但是它们的可用操作方式有明显不同。
寄存器单元可以工作在触发、计数和锁存等多种操作方式。(74LS74,经典了吧?用74系列搭个CPU看看就好理解了。)具体如何操作得看指令译码器和时序控制器。
存储器操作是根据CPU当前行为来进行,MEMO读写指令只产生MEMO读写控制信号,译码是由地址决定。操作方式只有锁存一种。
要对存储器某个地址进行位操作,则要通过寄存器完成。对于CPU核心来说,RAM始终是外部的。REG才是内部的。
答 6: 嗯,获益不少,仔细体会各位的发言中。交流是学习的有效路径阿。
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【EEPW电子工程师创研计划】技术变现通道已开启~ | |
发原创文章 【每月瓜分千元赏金 凭实力攒钱买好礼~】 | |
【EEPW在线】E起听工程师的声音! | |
“我踩过的那些坑”主题活动——第001期 | |
高校联络员开始招募啦!有惊喜!! | |
【工程师专属福利】每天30秒,积分轻松拿!EEPW宠粉打卡计划启动! | |
送您一块开发板,2025年“我要开发板活动”又开始了! | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
【我踩过的那些坑】结构堵孔导致的喇叭无声问题被打赏50分 | |
【我踩过的那些坑】分享一下调试一款AD芯片的遇到的“坑”被打赏50分 | |
电流检测模块MAX4080S被打赏10分 | |
【我踩过的那些坑】calloc和malloc错误使用导致跑飞问题排查被打赏50分 | |
多组DCTODC电源方案被打赏50分 | |
【我踩过的那些坑】STM32cubeMX软件的使用过程中的“坑”被打赏50分 | |
新手必看!C语言精华知识:表驱动法被打赏50分 | |
【我踩过的那些坑】杜绑线问题被打赏50分 | |
【我踩过的那些坑】STM32的硬件通讯调试过程的“坑”被打赏50分 | |
【我踩过的那些坑】晶振使用的问题被打赏100分 |