ARM汇编可不可以将一个寄存器的值传给一个标号所在地址??? 如果可以请问如何实现。

ARM汇编可不可以将一个寄存器的值传给一个标号所在地址??? 如果可以请问如何实现。,第1张

可以,用STR指令。如:STR R0,[R1] 把寄存器R0里的值存储到R1所指向地址单元。

还有一个批量存储指令STM,如:STMIA R0, {R2-R5} 把R2到R5里的内容依次存储到 R0、R0+4、R0+8、R0+12所指向的存储单元。

关于这两个指令及LDR和LDM的更多用法楼主大可用百度google一下。。。

虽然不知道程序含义,但 目测应该有问题,在嵌入式的寄存器赋值中往往只赋值你需要的位,其它位由于可能有特殊含义,最好保留,因而就有以下算法:( IO0SET虽然赋值0无意义,只是为了说明算法)

IO0SET |= (1<<23) //23位赋值1,其它位保留。

IO0SET &= ~(1<<23) //23位赋值0,其它位保留。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/9030298.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-24
下一篇 2023-04-24

发表评论

登录后才能评论

评论列表(0条)

保存