设为首页收藏本站淘宝杂货铺

从F到0 - From F to 0

 找回密码
 注册已关闭
搜索
查看: 2581|回复: 4
收起左侧

易语言MASM汇编置入代码实现日期时间型数组与双精度小数型数组极速互相转换(无返回值)

[复制链接]
发表于 2019-8-14 13:02:07 | 显示全部楼层 |阅读模式

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

  3. .程序集 程序集1

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


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

  7. .子程序 _临时子程序
  8. .局部变量 A, 日期时间型, , "0"
  9. .局部变量 B, 双精度小数型, , "0"

  10. A = { [2000年1月1日], [2038年1月19日], [2222年2月22日2时22分22秒], [2019年1月1日], [1933年10月18日16时17分37秒] }

  11. 日期时间型数组到双精度小数型数组 (A, B)
  12. 调试输出 (A, B)

  13. B = { 12345.6789, 3.1415926, 0, 123, 22222.2222 }
  14. 双精度小数型数组到日期时间型数组 (B, A)
  15. 调试输出 (A, B)

  16. .子程序 日期时间型数组到双精度小数型数组, , 公开
  17. .参数 日期时间型数组, 日期时间型, 数组
  18. .参数 双精度小数型数组, 双精度小数型, 参考 数组, 结果输出,必须为数组变量

  19. 重定义数组 (双精度小数型数组, 真, 取数组成员数 (日期时间型数组))
  20. 置入代码 ({ 96, 139, 69, 8, 139, 0, 139, 93, 12, 139, 27, 139, 115, 4, 131, 192, 8, 131, 195, 8, 51, 255, 235, 15, 139, 12, 248, 137, 12, 251, 139, 76, 248, 4, 137, 76, 251, 4, 71, 59, 254, 114, 237, 97 })
  21. ' pusha
  22. ' mov eax,[ebp+8]
  23. ' mov eax,[eax]
  24. ' mov ebx,[ebp+12]
  25. ' mov ebx,[ebx]
  26. ' mov esi,[ebx+4]
  27. ' add eax,8
  28. ' add ebx,8
  29. ' xor edi,edi
  30. ' .while edi < esi
  31. ' mov ecx,[eax+edi*8]
  32. ' mov [ebx+edi*8],ecx
  33. ' mov ecx,[eax+edi*8+4]
  34. ' mov [ebx+edi*8+4],ecx
  35. ' inc edi
  36. ' .endw
  37. ' popa


  38. .子程序 双精度小数型数组到日期时间型数组, , 公开
  39. .参数 双精度小数型数组, 双精度小数型, 数组
  40. .参数 日期时间型数组, 日期时间型, 参考 数组, 结果输出,必须为数组变量

  41. 重定义数组 (日期时间型数组, 真, 取数组成员数 (双精度小数型数组))
  42. 置入代码 ({ 96, 139, 69, 8, 139, 0, 139, 93, 12, 139, 27, 139, 115, 4, 131, 192, 8, 131, 195, 8, 51, 255, 235, 15, 139, 12, 248, 137, 12, 251, 139, 76, 248, 4, 137, 76, 251, 4, 71, 59, 254, 114, 237, 97 })
  43. ' pusha
  44. ' mov eax,[ebp+8]
  45. ' mov eax,[eax]
  46. ' mov ebx,[ebp+12]
  47. ' mov ebx,[ebx]
  48. ' mov esi,[ebx+4]
  49. ' add eax,8
  50. ' add ebx,8
  51. ' xor edi,edi
  52. ' .while edi < esi
  53. ' mov ecx,[eax+edi*8]
  54. ' mov [ebx+edi*8],ecx
  55. ' mov ecx,[eax+edi*8+4]
  56. ' mov [ebx+edi*8+4],ecx
  57. ' inc edi
  58. ' .endw
  59. ' popa

复制代码

相关帖子

您需要登录后才可以回帖 登录 | 注册已关闭

本版积分规则

QQ|手机版|Archiver|从F到0 ( 蒙ICP备17002595号-1 )
蒙公网安备15010402000325号

腾讯云安全认证

GMT+8, 2024-3-29 19:12 , Processed in 0.402023 second(s), 20 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表