请弄过汇编的提个意见,关于读5000行汇编东东...

2020-01-20 19:09发布

这个程序以前是8031+外部存储器的机器,老机器,外国人的,我们学习中。
里边有8155,8255等等,程序有5000行汇编,汇编是反汇编来的,15k程序,RAM基本都用完,没有解释,
请问读懂这个程序是否困难,去交给电子市场的话我要求能提供详细解释(详细到我能修改里边的参数),大概的报价是多少?
如果我们自己读这个程序(我们没有很丰富的汇编经验,有丰富的C,外设控制,多种MCU经验),是否可行,大概多久能看出门道?
请大家评估下给个参考意见。谢谢!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
84条回答
zhxzhx
2020-01-25 12:05
【39楼】 kl818bc000 我不是马

这你就老外了,8031不带程序存储器的仿真器,比JTAG的要好用的多了,看来你没有用过51的仿真器啊!

标准51的仿真器,就是仿真cpu,拔掉真的cpu,插上仿真头,8155,8255,什么的都是真实时效的运行

你看看仿真器的功能:

条件断点
    多种采样方式便于对用户板不同的存储器进行条件触发或者条件断点,又可以使用“事件计数”功能,通过指定程序第几次执行到指定地址发生时,触发逻辑分析工作,然后根据事件发生的前后几次采样数据,进行总线采样的过程分析。
    触发逻辑分析也可以对 XTATA 外部数据存储器、CODE 程序存储器、SFR 特殊功能存储器、REG 内部存储器、XDATA数据范围、CODE程序范围、LAPOD(外接测试探勾信号)输入,进行 4种条件采样分析。

代码覆盖:
    在运行复杂结构的程序时,可以实时地了解程序的执行情况,可以动态地观察到指定条件下,某段代码是否被执行了。在用户程序运行时,如用单步、断点或全速运行,利用该功能随时观察到程序执行情况,能观察到在源程序, CPU窗口、CODE代码区窗口、程序运行过的指令以不同颜 {MOD}作标记显示。例如:中断有没有响应,只需看中断子程序有没有变颜 {MOD},子程序有无调用,只需看子程序模块有无变颜 {MOD}即可。

程序时效分析:
    分析程序中,过程、函数以及每条指令的运行时间,执行次数及占整个程序程序运行时间的百分比,了解到一个程序多个函数中某个函数运行的效率有多高,执行了多长时间,代码覆盖优化到什么程度,利用该功能就可以优化程序,进一步改善程序的性能,从而改善程序的结构,开发出更有效、更稳定的程序。对提高程序效率,检查程序错误提供帮助。

数据时效分析:
    统计每个变量、存贮单元的访问次数及占整个程序访问次数的百分比,即统计分析当前运行的程序中各变量、数据单元是否被读/写和读/写的次数及读/写次数占总读/写次数的百分比,变量是被写过,还是变量被读过,变量是先写后读,还是先读后写,统计出读/写的次数。如:对某一段XDATA变量检查是否被读/写过,是否读/写正确,可利用该功能完成。对提高程序效率、检查程序错误提供帮助。

影子存储器:
    在用户程序运行时,可以观察外部存贮器内容的变化,设计师无须停下程序,也能直观、动态监视外部数据变化。影子存储器就是在仿真环境中为外部存储器建立一个影子,可以在程序运行时,动态地观察到外部存储器的状态,利用该功能可对调试实时数据采集控制程序提供有力的帮助。

条件断点:支持数据断点、程序断点、内部特殊功能寄存器断点、内部寄存器断点、数据范围断点、程序范围断点。外部测试点断点及最多65536次断点计数。

利用程序范围断点,立刻就可以发现程序跑飞.

一周热门 更多>