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

易语言MASM汇编置入代码实现指针到(长整数型/日期时间型/双精度小数型)数组(无返回值)

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

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

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

x
本帖最后由 EAX 于 2020-8-21 16:57 编辑

1.png

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

  3. .程序集 程序集1

  4. .子程序 _启动子程序, 整数型


  5. _临时子程序 ()
  6. 返回 (0)

  7. .子程序 _临时子程序
  8. .局部变量 字节集, 字节集
  9. .局部变量 指针, 整数型
  10. .局部变量 数组, 长整数型, , "0"
  11. .局部变量 数组2, 日期时间型, , "0"
  12. .局部变量 数组3, 双精度小数型, , "0"

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


  17. 字节集 = 到字节集 (取现行时间 ()) + 到字节集 ([2020年1月1日])
  18. 指针 = 取变量数据地址 (字节集)
  19. 指针到日期时间型数组 (指针, 2, 数组2)
  20. 调试输出 (数组2)


  21. 字节集 = { 68, 23, 65, 84, 251, 33, 9, 64, 155, 113, 26, 162, 10, 191, 5, 64 }
  22. 指针 = 取变量数据地址 (字节集)
  23. 指针到双精度小数型数组 (指针, 2, 数组3)
  24. 调试输出 (数组3, 到字节集 (数组3) = 字节集)



  25. .子程序 指针到长整数型数组, , 公开
  26. .参数 内存数据指针, 整数型
  27. .参数 数组成员数, 整数型
  28. .参数 返回数组, 长整数型, 参考 数组

  29. 重定义数组 (返回数组, 真, 数组成员数)
  30. 置入代码 ({ 80, 83, 81, 82, 86, 87, 139, 125, 8, 139, 117, 12, 139, 93, 16, 139, 27, 131, 195, 8, 51, 201, 235, 15, 139, 4, 207, 139, 84, 207, 4, 137, 4, 203, 137, 84, 203, 4, 65, 59, 206, 114, 237, 95, 94, 90, 89, 91, 88 })
  31. ' push eax
  32. ' push ebx
  33. ' push ecx
  34. ' push edx
  35. ' push esi
  36. ' push edi
  37. ' mov edi,[ebp+8]
  38. ' mov esi,[ebp+12]
  39. ' mov ebx,[ebp+16]
  40. ' mov ebx,[ebx]
  41. ' add ebx,8
  42. ' xor ecx,ecx
  43. ' .while ecx < esi
  44. ' mov eax,[edi+ecx*8]
  45. ' mov edx,[edi+ecx*8+4]
  46. ' mov [ebx+ecx*8],eax
  47. ' mov [ebx+ecx*8+4],edx
  48. ' inc ecx
  49. ' .endw
  50. ' pop edi
  51. ' pop esi
  52. ' pop edx
  53. ' pop ecx
  54. ' pop ebx
  55. ' pop eax


  56. .子程序 指针到日期时间型数组, , 公开
  57. .参数 内存数据指针, 整数型
  58. .参数 数组成员数, 整数型
  59. .参数 返回数组, 日期时间型, 参考 数组

  60. 重定义数组 (返回数组, 真, 数组成员数)
  61. 置入代码 ({ 80, 83, 81, 82, 86, 87, 139, 125, 8, 139, 117, 12, 139, 93, 16, 139, 27, 131, 195, 8, 51, 201, 235, 15, 139, 4, 207, 139, 84, 207, 4, 137, 4, 203, 137, 84, 203, 4, 65, 59, 206, 114, 237, 95, 94, 90, 89, 91, 88 })
  62. ' push eax
  63. ' push ebx
  64. ' push ecx
  65. ' push edx
  66. ' push esi
  67. ' push edi
  68. ' mov edi,[ebp+8]
  69. ' mov esi,[ebp+12]
  70. ' mov ebx,[ebp+16]
  71. ' mov ebx,[ebx]
  72. ' add ebx,8
  73. ' xor ecx,ecx
  74. ' .while ecx < esi
  75. ' mov eax,[edi+ecx*8]
  76. ' mov edx,[edi+ecx*8+4]
  77. ' mov [ebx+ecx*8],eax
  78. ' mov [ebx+ecx*8+4],edx
  79. ' inc ecx
  80. ' .endw
  81. ' pop edi
  82. ' pop esi
  83. ' pop edx
  84. ' pop ecx
  85. ' pop ebx
  86. ' pop eax


  87. .子程序 指针到双精度小数型数组, , 公开
  88. .参数 内存数据指针, 整数型
  89. .参数 数组成员数, 整数型
  90. .参数 返回数组, 双精度小数型, 参考 数组

  91. 重定义数组 (返回数组, 真, 数组成员数)
  92. 置入代码 ({ 80, 83, 81, 82, 86, 87, 139, 125, 8, 139, 117, 12, 139, 93, 16, 139, 27, 131, 195, 8, 51, 201, 235, 15, 139, 4, 207, 139, 84, 207, 4, 137, 4, 203, 137, 84, 203, 4, 65, 59, 206, 114, 237, 95, 94, 90, 89, 91, 88 })
  93. ' push eax
  94. ' push ebx
  95. ' push ecx
  96. ' push edx
  97. ' push esi
  98. ' push edi
  99. ' mov edi,[ebp+8]
  100. ' mov esi,[ebp+12]
  101. ' mov ebx,[ebp+16]
  102. ' mov ebx,[ebx]
  103. ' add ebx,8
  104. ' xor ecx,ecx
  105. ' .while ecx < esi
  106. ' mov eax,[edi+ecx*8]
  107. ' mov edx,[edi+ecx*8+4]
  108. ' mov [ebx+ecx*8],eax
  109. ' mov [ebx+ecx*8+4],edx
  110. ' inc ecx
  111. ' .endw
  112. ' pop edi
  113. ' pop esi
  114. ' pop edx
  115. ' pop ecx
  116. ' pop ebx
  117. ' pop eax

复制代码

相关帖子

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

使用道具 举报

发表于 2020-8-21 23:04:24 | 显示全部楼层
1心1亿 发表于 2020-8-19 23:41
我没猜错明天就是整数型

你答对了
这个小可爱很神秘,什么都没留下
回复 支持 反对

使用道具 举报

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

本版积分规则