我在 ARM 程序集中为皮质定义了两个段 - M4,一个是代码(只读),另一个是数据(读写)。只读存储器定义为从地址 0x08000000 开始,RW 存储器从 0x20000000 开始。每个段都在其自己的程序集文件中定义,并且标签名称被正确导出/导入。
数据段写为:
AREA myData, Data, READWRITE
EXPORT myString
myString DCB "To be or not to be, that is the question"
END
在代码中,我使用 LDR R0, =myString 加载字符串的地址
R0 正确地将地址 0x20000000 加载到 R0 中。但是当使用 Keil uVision IDE 内存视图时,该地址处的内存是空的。相反,我在只读区域中的代码后面找到了字符串。那么你能告诉我如何将字符串放在内存中的正确位置吗?
谢谢