大神好,在一块SDRAM里,从地址0x450000开始一共存了16块数据,每块数据8192word,但是只有前4096word有效。所以我采取了以下方式取数:首先#define source 0x450000,然后定义了一个指针 unsigned int* p=(unsigned int* )source;最后在while循环里每次让p+8192,然后对应取数,每个数据块取682个数。结果,最终得到的数组里,前5463个数(一共10550个数)是对的,后面的都是错的。为什么呢?后来我重新定义了一个long型数a用来存0x450000,然后每次a=a+8192,然后p=(unsigned int* )a,接着取数,就都是正确的了。大神,求指导,求解释,不胜感激~~~
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
谢谢大神回复,我用sizeof看了一下,是4个字节,看来是32位的。不知道大神对CMD文件编写有研究吗?
一周热门 更多>