R0和R1寄存在存储器映射中的哪个位置?

use*_*085 4 memory memory-management msp430 msp

我对程序计数器(R0)和堆栈指针(R1)在内存映射中的位置感到困惑.我认为它们位于CPU内部,因此内存映射中没有任何位置显示这些寄存器.但我的朋友坚持认为它们位于特殊功能寄存器(SFR)中,它们位于存储器映射的底部.哪一个是正确的答案?

tin*_*man 5

寄存器R0和R1(以及所有其他通用寄存器)驻留在CPU内,并使用对操作数使用"寄存器模式"的指令进行访问.它们不是内存映射的.

特殊功能寄存器在您使用的MSP430变体的器件特定数据表中定义.SFR通常包括中断使能位和中断标志位,用于直接影响CPU执行的器件(如NMI,振荡器故障等和第一个串行端口),但通常不包括其他通用外设.

例如,请参见"MSP430x2xx系列用户指南"中的"图3-1:CPU框图",SAU144H.寄存器显示为CPU的一部分.

另外作为示例,请参见MSP430F2619-HT器件特定数据手册的第14页,其中显示了特定的功能寄存器.没有提到通用寄存器.