当前位置: 代码迷 >> 单片机 >> 寄存器终究位于哪里? 求大神指导。
  详细解决方案

寄存器终究位于哪里? 求大神指导。

热度:65   发布时间:2016-04-28 15:02:58.0
寄存器到底位于哪里? 求大神指导。。
小白,刚接触,单片机,顺便看计算计组成原理。看到在mcs-51中SFR位于ram中,而计组中说寄存器位于cpu中。这怎么理解?  然后能不能详细说下,在mcs—51中寄存器只存在于ram中?别的地方有?  在计组原理中只位于cpu中? 别的地方可有?  求各位大神帮忙解释,谢谢!还有就是能不能给点学习的建议,比如从哪里着重入手和理解~~
------解决方案--------------------
51和计算机的CPU结构不一样的
寄存器一般和硬件相关的,CPU中也一样
可以这样理解,51比较穷,寄存器和数据都是住在一个房子里面RAM
而CPU比较有钱,寄存器住在CPU里面,数据住在外面一个大房子里(内存).
不过现在的CPU内部都有按MB计的缓存了
------解决方案--------------------
首先,寄存器在结构和性能上类似于 RAM。

其次,CPU 或者 51 中的 ALU 必须有寄存器来支持其工作,例如 51 ALU 中的寄存器 A 和 B。

第三,在 51 中,它所定义的“寄存器堆”与内部 RAM 共用地址,通过指令来区分,并非真的在 RAM 中。这是 51 配置的特点。这些寄存器堆是协助 ALU 进行各种运算调度的。它们甚至可以设置有多组,通过选择来使用。

另外,在芯片的功能模块中,也存在寄存器。例如 Timer 中的控制状态寄存器、计数设置寄存器等等。

不要有寄存器只能在某一处的局限性想法,日后见多了,自然就知道了。
------解决方案--------------------
CPU寄存器在CPU里面,外设寄存器在RAM空间.
当然了,有些MCU还有专门的外设空间,比如51,外设寄存器也可以处于这个空间内.
  相关解决方案