小白,刚接触,单片机,顺便看计算计组成原理。看到在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,外设寄存器也可以处于这个空间内.