咱们还是老老实实用C,说什么汇编效率比C高的,那说的是大神写的。大部分人写的汇编都是又臭又长。编译器不开优化效率都比他高。 |
你对EQU这种非常不规范的写法的热爱,也太深沉了。 LDR R0,=RCC 这实际上是个伪指令,真实指令是: LDR R0,RCC RCC DCD 0x40021018 你这个代码还有优化空间,17行可以删除,19行改成: STR R1,[R0,#12] c编译器生成的代码比你自己瞎写的效率高多了。 |
lyonkon 发表于 2023-4-30 18:45 看过权威指南进阶就不用看书了,打开库例程,编译选择生成s文件,看s文件里面怎么写的就知道了。 看看你发的这个帖子:关于STM32单片机点亮c13口led灯程序 端口寄存器理解 主贴贴出来的汇编代码 再看看这本权威指南: ![]() 打红叉那部分你可以不看 ![]() 这半张纸的内容已经足以说明你写的汇编文件就没有一句话是对的,你根本就没看过书,就敢写文件? |
Hephaestus 发表于 2023-4-30 15:50 看视频推荐,买了一本cortx-m3权威指南,但上面没有例程,汇编只是一带而过。其他书籍也没敢买。上面这个问题我解决了,接下来准备汇编点灯,看了下《指南》发现EQU指令和51单片机不一样,mov指令只针对核心寄存器,外设寄存器赋值现在不会,如果你有这方面书籍,请推荐一本 |
又想着要搞汇编,怎么写汇编的书也不看,项目里面现成的汇编文件不去看,没个一百年你这汇编是学不会的。 |