菜农的超级51反汇编disasm51用着如何?disappointed和disappointing的区别
本文目录
菜农的超级51反汇编disasm51用着如何
菜农的51超级反汇编disasm51是在1993年编写的,在DOS上用命令行运行的。
当时发现万利的仿真器自带的intel编写的61反汇编不错,但是代码和数据的分离做的不太好,但优点是可以手工指定从某区域开始反汇编。
菜农是受到还反汇编的启发产生了编写反汇编的念头。
当时需要许多数据格式的转换,所以想练手,故编写了许多转换程序,如hex2bin,bin2hex的这些已经有的命令行程序。
反汇编的要点就是“数据和代码的分离”!
菜农的原则是哪怕反汇编出来的全部是数据区,也能通过编译器再次编译。
由于51开始必须是从“复位中断向量”开始运行的,它运行过的,就是“程序区”,未运行到的地方就叫“数据区”。
51还有其他中断向量,如外部中断向量,定时器中断向量,串口中断向量等,但并非一定执行,即可能不存在,如果强行执行,反汇编的代码肯定不对。
因为程序中存在“散转程序”或函数指针,故指令中隐藏了程序的入口地址,而真的入口地址在“变量”或“数组中隐藏着。
故需要用户自己添加这些“隐藏向量”,即“强制入口地址表”。
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文件并保存。
用户的所以操作就在“用户定义”窗口内,然后只需点击“单次”或“绿色箭头”即可运行反汇编。
其输出为A51文件,可以在disasm51内的“A51文件”窗口内查看,也可以用keil查看,或其他软件查看。
HotISP网上有下载,也可通过头条私信联系菜农。
disappointed和disappointing的区别
(1) disappointing 表示“令人失望的”的意思,一般用于事物给人的感觉。 例句:Lunch tended to be an even more disappointing affair. 午餐往往是一件更令人失望的事情。 That may be disappointing to bankers and some investors, but it would be a sign of progress. 这可能会使银行家们和一些投资人感到失望,但这的确是一个上升的信号。 注意事项:如果用于“人”,则表示该人令别人失望。 The girl was very disappointing. 这女孩很令人失望。 (2) disappointed 表示“失望的”、“感到失望的”的含义,一般用以说明“人”自己的感觉。 例句:The last job rejection disappointed me badly. 最后求职遭拒绝令我很失望。 Have me and Mom ever extremely disappointed you? 我和妈妈有没有让你特别失望过? 注意事项:如果用于修饰 voice, look, expression, appearance, manner等名词,则表示与之相关名词的逻辑主语感到失望。 We noticed a disappointing look on his face. 我们注意到他脸上一种令人失望的表情。 例句解析:“他”并不失望,但见了他表情的人会失望。 We noticed a disappointed look on his face. 我们注意到他脸上有一种失望的表情。 例句解析:感到失望的是“他”,不是别人。
更多文章:

软件架构师工资一般多少(java高级软件工程师工资收入多少)
2025年2月11日 15:00

reportmachine什么意思(report是什么意思,怎么念)
2025年2月15日 09:50

dedecms模板(dedecms如何修改模板以及如何更换模板)
2025年2月19日 07:20

vba listview(cad2016 VBA7 如何添加listview)
2025年3月4日 14:40

paddingleft(android:Layout_paddingLeft和android:paddingLeft有什么区别)
2025年3月7日 12:50

mysql inner join用法(MYsql 中INNER JOIN 问题)
2025年3月3日 15:10

request getparameter(request.getParameter()怎么能从Action里获得值)
2025年2月16日 06:30

divide into是什么意思(divided into是什么意思)
2025年3月26日 22:30