PK使人进步 disasm51编码新方案51入门和远离的好帮手

[复制链接]
5701|26
 楼主| hotpower 发表于 2011-10-30 19:57 | 显示全部楼层 |阅读模式
本帖最后由 hotpower 于 2011-10-30 22:06 编辑

点击下载HotISP_V280B:
新浪微盘(入群密码250):http://q.weibo.com/632890/file/15759946
腾讯微群(入群密码250):http://qun.t.qq.com/78184763/share

此编码已经通过测试软件的验证,不日disasm51将启用此新的编码方案。
大家可以在HotISP内点击“指令分析”进行验证。

HotISP简介:
HotISP V2.80B增强了控制台功能,可以批量处理命令行,以后还会支持命令行文件。
此功能是VC控制台程序最好的输出显示。为单片机初学者学习C/C++提供了一个好平台。

HotISP目前支持:
新唐Cortex-M0的串口和USB的ISP程序下载,ICP部分功能。
恩智浦部分ARM7和Cortex-M0的串口ISP程序下载。

从HotISP可以直接进入Keil,可以打开Keil文件或工程。
其中51反汇编disasm51可以直接编译A51文件。可以脱离Keil平台(包内自带A51.exe)
支持HEX文件和BIN文件的相互转换。

HotISP目前已经完善了语音的听书和语音识别,所有的提示都是语音提示,可以自定义声控命令。
其内部嵌入了多个串口助手,而且内置了一个并口助手。

HotISP可以进行网络通讯,目前支持局域网的网络聊天部分功能。

HotISP 将成为一个通用的工具软件。
计划网络控制有4种。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| hotpower 发表于 2011-10-30 20:18 | 显示全部楼层
HotISP简介:
HotISP V2.80B增强了控制台功能,可以批量处理命令行,以后还会支持命令行文件。
HotISP目前支持:
新唐Cortex-M0的串口和USB的ISP程序下载,ICP部分功能。
恩智浦部分ARM7和Cortex-M0的串口ISP程序下载。

从HotISP可以直接进入Keil,可以打开Keil文件或工程。
其中51反汇编disasm51可以直接编译A51文件。

HotISP目前已经完善了语音的听书和语音识别,所有的提示都是语音提示,可以自定义声控命令。
其内部嵌入了多个串口助手,而且内置了一个并口助手。

HotISP可以进行网络通讯,目前支持局域网的网络聊天部分功能。

HotISP 将成为一个通用的工具软件。
计划网络控制有4种。
缥缈九哥 发表于 2011-10-30 21:21 | 显示全部楼层
顶起。
murex 发表于 2011-10-30 21:32 | 显示全部楼层
 楼主| hotpower 发表于 2011-10-30 21:37 | 显示全部楼层
  1. 指令编码符号规则
  2. $: 转移分支地址
  3. &: 直接地址
  4. #: 立即数
  5. !: 位地址
  6. 其中!与&或#不能组合

 楼主| hotpower 发表于 2011-10-30 21:39 | 显示全部楼层
所有转移分支指令:

  1. 01:AJMP  $        ;02 11111110;6FFE
  2. 02:LJMP  $        ;03 11111111;66FF
  3. 10:JBC   !,$      ;03 10010011;6893
  4. 11:ACALL $        ;02 11111010;6FFA
  5. 12:LCALL $        ;03 11111011;66FB
  6. 20:JB    !,$      ;03 10010011;6893
  7. 21:AJMP  $        ;02 11111110;6FFE
  8. 22:RET            ;01 11111101;FFFD
  9. 30:JNB   !,$      ;03 10010011;6893
  10. 31:ACALL $        ;02 11111010;6FFA
  11. 32:RETI           ;01 11111101;FFFD
  12. 40:JC    $        ;02 10001010;6F8A
  13. 41:AJMP  $        ;02 11111110;6FFE
  14. 50:JNC   $        ;02 10001010;6F8A
  15. 51:ACALL $        ;02 11111010;6FFA
  16. 60:JZ    $        ;02 10000110;6F86
  17. 61:AJMP  $        ;02 11111110;6FFE
  18. 70:JNZ   $        ;02 10000110;6F86
  19. 71:ACALL $        ;02 11111010;6FFA
  20. 73:JMP   @A+DPTR;?;01 11111101;FFFD
  21. 80:SJMP  $        ;02 11111110;6FFE
  22. 81:AJMP  $        ;02 11111110;6FFE
  23. 91:ACALL $        ;02 11111010;6FFA
  24. A1:AJMP  $        ;02 11111110;6FFE
  25. B1:ACALL $        ;02 11111010;6FFA
  26. B4:CJNE  A,#,$    ;03 10100111;8AA7
  27. B5:CJNE  A,&,$    ;03 11000111;8AC7
  28. B6:CJNE  @R0,#,$  ;03 10100011;ACA3
  29. B7:CJNE  @R1,#,$  ;03 10100011;ACA3
  30. B8:CJNE  R0,#,$   ;03 10100011;9BA3
  31. B9:CJNE  R1,#,$   ;03 10100011;9BA3
  32. BA:CJNE  R2,#,$   ;03 10100011;9BA3
  33. BB:CJNE  R3,#,$   ;03 10100011;9BA3
  34. BC:CJNE  R4,#,$   ;03 10100011;9BA3
  35. BD:CJNE  R5,#,$   ;03 10100011;9BA3
  36. BE:CJNE  R6,#,$   ;03 10100011;9BA3
  37. BF:CJNE  R7,#,$   ;03 10100011;9BA3
  38. C1:AJMP  $        ;02 11111110;6FFE
  39. D1:ACALL $        ;02 11111010;6FFA
  40. D5:DJNZ  &,$      ;03 11000011;68C3
  41. D8:DJNZ  R0,$     ;02 10000010;9F82
  42. D9:DJNZ  R1,$     ;02 10000010;9F82
  43. DA:DJNZ  R2,$     ;02 10000010;9F82
  44. DB:DJNZ  R3,$     ;02 10000010;9F82
  45. DC:DJNZ  R4,$     ;02 10000010;9F82
  46. DD:DJNZ  R5,$     ;02 10000010;9F82
  47. DE:DJNZ  R6,$     ;02 10000010;9F82
  48. DF:DJNZ  R7,$     ;02 10000010;9F82
  49. E1:AJMP  $        ;02 11111110;6FFE
  50. F1:ACALL $        ;02 11111010;6FFA
 楼主| hotpower 发表于 2011-10-30 21:39 | 显示全部楼层
所有转移指令:

  1. 01:AJMP  $        ;02 11111110;6FFE
  2. 02:LJMP  $        ;03 11111111;66FF
  3. 21:AJMP  $        ;02 11111110;6FFE
  4. 22:RET            ;01 11111101;FFFD
  5. 32:RETI           ;01 11111101;FFFD
  6. 41:AJMP  $        ;02 11111110;6FFE
  7. 61:AJMP  $        ;02 11111110;6FFE
  8. 73:JMP   @A+DPTR;?;01 11111101;FFFD
  9. 80:SJMP  $        ;02 11111110;6FFE
  10. 81:AJMP  $        ;02 11111110;6FFE
  11. A1:AJMP  $        ;02 11111110;6FFE
  12. C1:AJMP  $        ;02 11111110;6FFE
  13. E1:AJMP  $        ;02 11111110;6FFE

 楼主| hotpower 发表于 2011-10-30 21:41 | 显示全部楼层
所有分支:

  1. 10:JBC   !,$      ;03 10010011;6893
  2. 11:ACALL $        ;02 11111010;6FFA
  3. 12:LCALL $        ;03 11111011;66FB
  4. 20:JB    !,$      ;03 10010011;6893
  5. 30:JNB   !,$      ;03 10010011;6893
  6. 31:ACALL $        ;02 11111010;6FFA
  7. 40:JC    $        ;02 10001010;6F8A
  8. 50:JNC   $        ;02 10001010;6F8A
  9. 51:ACALL $        ;02 11111010;6FFA
  10. 60:JZ    $        ;02 10000110;6F86
  11. 70:JNZ   $        ;02 10000110;6F86
  12. 71:ACALL $        ;02 11111010;6FFA
  13. 91:ACALL $        ;02 11111010;6FFA
  14. B1:ACALL $        ;02 11111010;6FFA
  15. B4:CJNE  A,#,$    ;03 10100111;8AA7
  16. B5:CJNE  A,&,$    ;03 11000111;8AC7
  17. B6:CJNE  @R0,#,$  ;03 10100011;ACA3
  18. B7:CJNE  @R1,#,$  ;03 10100011;ACA3
  19. B8:CJNE  R0,#,$   ;03 10100011;9BA3
  20. B9:CJNE  R1,#,$   ;03 10100011;9BA3
  21. BA:CJNE  R2,#,$   ;03 10100011;9BA3
  22. BB:CJNE  R3,#,$   ;03 10100011;9BA3
  23. BC:CJNE  R4,#,$   ;03 10100011;9BA3
  24. BD:CJNE  R5,#,$   ;03 10100011;9BA3
  25. BE:CJNE  R6,#,$   ;03 10100011;9BA3
  26. BF:CJNE  R7,#,$   ;03 10100011;9BA3
  27. D1:ACALL $        ;02 11111010;6FFA
  28. D5:DJNZ  &,$      ;03 11000011;68C3
  29. D8:DJNZ  R0,$     ;02 10000010;9F82
  30. D9:DJNZ  R1,$     ;02 10000010;9F82
  31. DA:DJNZ  R2,$     ;02 10000010;9F82
  32. DB:DJNZ  R3,$     ;02 10000010;9F82
  33. DC:DJNZ  R4,$     ;02 10000010;9F82
  34. DD:DJNZ  R5,$     ;02 10000010;9F82
  35. DE:DJNZ  R6,$     ;02 10000010;9F82
  36. DF:DJNZ  R7,$     ;02 10000010;9F82
  37. F1:ACALL $        ;02 11111010;6FFA

578391555 发表于 2011-10-30 21:48 | 显示全部楼层
Mark一下
highgear 发表于 2011-10-30 23:08 | 显示全部楼层
俺有气无力地顶一下
plc_avr 发表于 2011-10-31 07:07 | 显示全部楼层
强力顶!
Cortex-M0 发表于 2011-10-31 07:19 | 显示全部楼层
俺有力无气地顶一下
 楼主| hotpower 发表于 2011-10-31 09:07 | 显示全部楼层
都认为自己是汇编高人,每条指令熟记在心,但每种分类数目知多少?

编码会提高检索效率,归类明确。

不知谁有兴趣写出此编码的分类表达式?
john_light 发表于 2011-10-31 11:12 | 显示全部楼层
没对指令集做过分类(也就是归纳),当年基本上都靠死记的,现在只记得两三条了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
123jj 发表于 2011-10-31 11:32 | 显示全部楼层
路过,狂顶菜农~~~

一个勤劳一生的农民~~~
 楼主| hotpower 发表于 2011-10-31 12:31 | 显示全部楼层
实际学好汇编的方法是明白反汇编。这样就必须知道所有的指令集合并加以归类。所以俺几乎10年不用51了,但是现在还不忘每条指令。
se2004 发表于 2011-10-31 15:34 | 显示全部楼层
新手路过,顶起
 楼主| hotpower 发表于 2011-11-1 10:57 | 显示全部楼层
今天领导让看dsp的F206的汇编,看的想呕吐!
反质子 发表于 2011-11-1 11:09 | 显示全部楼层
大叔 都有想呕吐的感觉:lol
 楼主| hotpower 发表于 2011-11-1 13:28 | 显示全部楼层
任务艰巨。一直用别人的,100元的他们卖1600元还需要批量过百。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:[url=http://www.21ic.com/tools/HotWC3_V1.23.html]

1460

主题

21617

帖子

508

粉丝
快速回复 在线客服 返回列表 返回顶部