6年9个月前IP:海南
870611
2楼

所以说学习ASM和学习C并举可以加深对两者的理解。我个人闲的无聊,喜欢拿ASM直接创建执行映像。比如我参考(抄袭)正点原子的OLED驱动代码如下,原来的C函数OLED_DrawPiont被我抄写成ASM版本DrawPiont了,转换是直译加意译,不是简单的直译,直译不费脑子但是效率低,意译是读懂了C函数的逻辑以后再根据CPU指令集的特点进行重构,保证高效精简。

1.jpg

当然,我自己也额外添加了两种矩形填充方式,因为画点方式效率低,但是非对齐访问太难有点费神,现在还没有实现。这个是直接由ASM构建的对齐式矩形填充,转化为C函数对我来说也很容易。

2.jpg


评论
文号 / 870611

百炼成钢
名片专栏发私信
学术分 1
总主题 76 帖总回复 759 楼拥有证书:进士 学者 机友 笔友
注册于 2013/07/27 23:47:39最后登录 2026/10/28 07:42:24
主体类型:个人
所属领域:无
认证方式:手机号
IP归属地:0

个人简介

暂未填写
笔记
{{note.content}}
{{n.user.username}}
{{fromNow(n.toc)}} {{n.status === noteStatus.disabled ? "已屏蔽" : ""}} {{n.status === noteStatus.unknown ? "正在审核" : ""}} {{n.status === noteStatus.deleted ? '已删除' : ''}}
  • 编辑
  • 删除
  • {{n.status === 'disabled' ? "解除屏蔽" : "屏蔽" }}
我也是有底线的