所以说学习ASM和学习C并举可以加深对两者的理解。我个人闲的无聊,喜欢拿ASM直接创建执行映像。比如我参考(抄袭)正点原子的OLED驱动代码如下,原来的C函数OLED_DrawPiont被我抄写成ASM版本DrawPiont了,转换是直译加意译,不是简单的直译,直译不费脑子但是效率低,意译是读懂了C函数的逻辑以后再根据CPU指令集的特点进行重构,保证高效精简。
当然,我自己也额外添加了两种矩形填充方式,因为画点方式效率低,但是非对齐访问太难有点费神,现在还没有实现。这个是直接由ASM构建的对齐式矩形填充,转化为C函数对我来说也很容易。
时段 | 个数 |
---|---|
{{f.startingTime}}点 - {{f.endTime}}点 | {{f.fileCount}} |