菜农的超级51反汇编disasm51用着如何?
菜农的51超级反汇编disasm51是在1993年编写的,在DOS上用命令行运行的 。当时发现万利的仿真器自带的intel编写的61反汇编不错,但是代码和数据的分离做的不太好,但优点是可以手工指定从某区域开始反汇编 。菜农是受到还反汇编的启发产生了编写反汇编的念头 。当时需要许多数据格式的转换,所以想练手,故编写了许多转换程序,如hex2bin,bin2hex的这些已经有的命令行程序 。
反汇编的要点就是“数据和代码的分离”!菜农的原则是哪怕反汇编出来的全部是数据区,也能通过编译器再次编译 。由于51开始必须是从“复位中断向量”开始运行的,它运行过的,就是“程序区”,未运行到的地方就叫“数据区” 。51还有其他中断向量,如外部中断向量,定时器中断向量,串口中断向量等,但并非一定执行,即可能不存在,如果强行执行,反汇编的代码肯定不对 。
【美国国防信息系统局,disa】因为程序中存在“散转程序”或函数指针,故指令中隐藏了程序的入口地址,而真的入口地址在“变量”或“数组中隐藏着 。故需要用户自己添加这些“隐藏向量”,即“强制入口地址表” 。disasm51只支持64K以内的程序的反汇编,故地址为两个字节4个16进制数字 。由于现在是windows时代,故命令行已经没人使用也非常不方便,故菜农将其嵌入到HotISP软件内,HotISP的本来工作是用ISP下载程序 。
在HotISP,可以选择主菜单“HotWC3”,子菜单“MCS51反汇编”,就会出现disasm51窗口界面 。它需要提供disasm51.exe的安装路径(已经默认安装),用户必须提供BIN格式的文件!如果是HEX格式,需要在“文件转换”里进行HEX和BIN的自动转换 。disasm51可以和keil文件或keil工程联动 。
点击“打开keil文件”,即可在keil里打开用户的反汇编后的A51文件,非常方便地再编辑修改文件 。点击“打开keil工程”,即可在keil里打开用户的工程,直接用keil编译用户的反汇编A51文件,可以生成HEX文件,非常方便 。用户可以包含keil内的芯片INC头文件,但必须先转换为“用户定义”DEF文件并保存 。
推荐阅读
- 苹果店可以换电池吗
- 美的净水器滤芯多久换一次,美国怡口净水机
- 美元 中国房价,美国大力印美元
- 美国2008年金融危机爆发时间是什么时候?爆发的原因又是什么呢?
- 缅因猫美国多少钱一只,中国缅因猫多少钱一只
- 房价暴涨的后果,美国房价暴涨会有什么后果
- 它能拯救中兴手机吗,中兴a2017
- 苹果官网美国,iphone美国
- 美国车系主要风格
- 附pdf电子书下载,pdf电子书下载网