设为首页收藏本站帮助中心
查看: 172|回复: 0
收起左侧

易语言MASM汇编置入代码实现整数型指针到字节型数组/指针到短整数型数组 (无返回值)

[复制链接]
发表于 2020-8-18 18:00:51 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?加入我们

x
1.png

  1. .版本 2
  2. .支持库 spec

  3. .程序集 程序集1

  4. .子程序 _启动子程序, 整数型, , 请在本子程序中放置易模块初始化代码


  5. _临时子程序 ()  ' 在初始化代码执行完毕后调用测试代码
  6. 返回 (0)  ' 可以根据您的需要返回任意数值

  7. .子程序 _临时子程序
  8. .局部变量 字节集, 字节集
  9. .局部变量 指针, 整数型
  10. .局部变量 数组, 字节型, , "0"
  11. .局部变量 数组2, 短整数型, , "0"

  12. 字节集 = { 1, 2, 3, 4, 5, 6, 7, 8 }
  13. 指针 = 取变量数据地址 (字节集)
  14. 指针到字节型数组 (指针, 8, 数组)
  15. 调试输出 (数组)
  16. 指针到短整数型数组 (指针, 4, 数组2)
  17. 调试输出 (数组2, 到字节集 (数组2))


  18. .子程序 指针到字节型数组, , 公开
  19. .参数 内存数据指针, 整数型
  20. .参数 内存数据长度, 整数型
  21. .参数 返回字节型数组, 字节型, 参考 数组

  22. 重定义数组 (返回字节型数组, 真, 内存数据长度)
  23. 置入代码 ({ 96, 139, 69, 8, 139, 117, 12, 139, 93, 16, 139, 27, 131, 195, 8, 51, 201, 235, 7, 138, 20, 1, 136, 20, 25, 65, 59, 206, 114, 245, 97 })
  24. ' pushad
  25. ' mov eax,[ebp+8]
  26. ' mov esi,[ebp+12]
  27. ' mov ebx,[ebp+16]
  28. ' mov ebx,[ebx]
  29. ' add ebx,8
  30. ' xor ecx,ecx
  31. ' .while ecx < esi
  32. ' mov dl,[eax+ecx]
  33. ' mov [ebx+ecx],dl
  34. ' inc ecx
  35. ' .endw
  36. ' popad

  37. .子程序 指针到短整数型数组, , 公开
  38. .参数 内存数据指针, 整数型
  39. .参数 数组成员数, 整数型
  40. .参数 返回短整数型数组, 短整数型, 参考 数组

  41. 重定义数组 (返回短整数型数组, 真, 数组成员数)
  42. 置入代码 ({ 96, 139, 69, 8, 139, 117, 12, 139, 93, 16, 139, 27, 131, 195, 8, 51, 201, 235, 9, 102, 139, 20, 72, 102, 137, 20, 75, 65, 59, 206, 114, 243, 97 })
  43. ' pushad
  44. ' mov eax,[ebp+8]
  45. ' mov esi,[ebp+12]
  46. ' mov ebx,[ebp+16]
  47. ' mov ebx,[ebx]
  48. ' add ebx,8
  49. ' xor ecx,ecx
  50. ' .while ecx < esi
  51. ' mov dx,[eax+ecx*2]
  52. ' mov [ebx+ecx*2],dx
  53. ' inc ecx
  54. ' .endw
  55. ' popad

复制代码

相关帖子

这个小可爱很神秘,什么都没留下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入我们

本版积分规则