不用说,代码是汇编而且非常复杂.你会如何解决这个问题?
我建议你从这个部分的需求规范开始(或生成),并在C中重新实现代码(或者甚至小心使用C++子集).如果您认为的"复杂性"仅仅是代码而不是要求,那么将其设计出来也是一个好主意 - 它只会使未来的维护变得更加复杂,容易出错并且成本高昂.
使用汇编程序的常见理由之一是大小和性能,但更常见的是大量汇编程序代码远非最佳; 为了保持一定的生产力和可维护性,通常使用"锅炉板"代码并重用不适合特定情况的代码,而编译器将分析代码更改并执行系统设计人员的那种"微优化"真的不应该出汗.使您的算法和数据结构高效,并将目标指令集详细信息留给编译器.
即使没有直接调试目标的能力,使用高级语言也可以在PC上进行原型设计和仿真.
即使您保留汇编代码,如果您的开发工具包含指令集模拟器,那么这可能是硬件调试的一个很好的替代方案; 特别是如果它支持可用于模拟硬件设备行为的调试器脚本.
所有这一切,将其视为一个"黑盒子",并得出结论认为代码效率低下是一个小小的飞跃.例如,什么样的闪存看起来很慢?它是如何与微控制器连接的?你是如何衡量这种表现的?闪存本质上很慢 - 尤其是写入和页面擦除; 在得出有关软件性能的任何结论之前,请检查Flash的性能规格.
归档时间: |
|
查看次数: |
236 次 |
最近记录: |