免扫码快速登录设为首页收藏本站帮助中心
查看: 122|回复: 0
收起左侧

MASM置入代码长整数型/日期时间型/子程序指针/双精度小数型快速交换变量(无返回值)

[复制链接]
发表于 2019-9-27 09:00:00 |阅读模式

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

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

x

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

  3. .程序集 程序集1

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


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

  7. .子程序 _临时子程序
  8. .局部变量 长整数A, 长整数型
  9. .局部变量 长整数B, 长整数型
  10. .局部变量 日期时间A, 日期时间型
  11. .局部变量 日期时间B, 日期时间型
  12. .局部变量 指针A, 子程序指针
  13. .局部变量 指针B, 子程序指针
  14. .局部变量 小数A, 双精度小数型
  15. .局部变量 小数B, 双精度小数型

  16. 长整数A = 到长整数 (“1111111111111111111”)
  17. 长整数B = 到长整数 (“1234567890123456789”)
  18. 快速交换变量_长整数型 (长整数A, 长整数B)
  19. 调试输出 (长整数A, 长整数B)
  20. 日期时间A = [2019年1月1日]
  21. 日期时间B = [2099年12月31日]
  22. 快速交换变量_日期时间型 (日期时间A, 日期时间B)
  23. 调试输出 (日期时间A, 日期时间B)
  24. 指针A = &快速交换变量_长整数型
  25. 指针B = &快速交换变量_日期时间型
  26. 调试输出 (指针A, 指针B)
  27. 快速交换变量_子程序指针 (指针A, 指针B)
  28. 调试输出 (指针A, 指针B)
  29. 小数A = 1.2345678
  30. 小数B = 3.1415926
  31. 快速交换变量_双精度小数型 (小数A, 小数B)
  32. 调试输出 (小数A, 小数B)


  33. .子程序 快速交换变量_长整数型, , 公开
  34. .参数 变量1, 长整数型, 参考
  35. .参数 变量2, 长整数型, 参考

  36. 置入代码 ({ 96, 139, 69, 8, 139, 93, 12, 139, 8, 139, 19, 137, 16, 137, 11, 131, 192, 4, 131, 195, 4, 139, 8, 139, 19, 137, 16, 137, 11, 97 })
  37. ' pushad
  38. ' mov eax,[ebp+8]
  39. ' mov ebx,[ebp+12]
  40. ' mov ecx,[eax]
  41. ' mov edx,[ebx]
  42. ' mov [eax],edx
  43. ' mov [ebx],ecx
  44. ' add eax,4
  45. ' add ebx,4
  46. ' mov ecx,[eax]
  47. ' mov edx,[ebx]
  48. ' mov [eax],edx
  49. ' mov [ebx],ecx
  50. ' popad


  51. .子程序 快速交换变量_日期时间型, , 公开
  52. .参数 变量1, 日期时间型, 参考
  53. .参数 变量2, 日期时间型, 参考

  54. 置入代码 ({ 96, 139, 69, 8, 139, 93, 12, 139, 8, 139, 19, 137, 16, 137, 11, 131, 192, 4, 131, 195, 4, 139, 8, 139, 19, 137, 16, 137, 11, 97 })
  55. ' pushad
  56. ' mov eax,[ebp+8]
  57. ' mov ebx,[ebp+12]
  58. ' mov ecx,[eax]
  59. ' mov edx,[ebx]
  60. ' mov [eax],edx
  61. ' mov [ebx],ecx
  62. ' add eax,4
  63. ' add ebx,4
  64. ' mov ecx,[eax]
  65. ' mov edx,[ebx]
  66. ' mov [eax],edx
  67. ' mov [ebx],ecx
  68. ' popad


  69. .子程序 快速交换变量_子程序指针, , 公开
  70. .参数 变量1, 子程序指针, 参考
  71. .参数 变量2, 子程序指针, 参考

  72. 置入代码 ({ 96, 139, 69, 8, 139, 93, 12, 139, 8, 139, 19, 137, 16, 137, 11, 97 })
  73. ' pushad
  74. ' mov eax,[ebp+8]
  75. ' mov ebx,[ebp+12]
  76. ' mov ecx,[eax]
  77. ' mov edx,[ebx]
  78. ' mov [eax],edx
  79. ' mov [ebx],ecx
  80. ' popad


  81. .子程序 快速交换变量_双精度小数型, , 公开
  82. .参数 变量1, 双精度小数型, 参考
  83. .参数 变量2, 双精度小数型, 参考

  84. 置入代码 ({ 96, 139, 69, 8, 139, 93, 12, 139, 8, 139, 19, 137, 16, 137, 11, 131, 192, 4, 131, 195, 4, 139, 8, 139, 19, 137, 16, 137, 11, 97 })
  85. ' pushad
  86. ' mov eax,[ebp+8]
  87. ' mov ebx,[ebp+12]
  88. ' mov ecx,[eax]
  89. ' mov edx,[ebx]
  90. ' mov [eax],edx
  91. ' mov [ebx],ecx
  92. ' add eax,4
  93. ' add ebx,4
  94. ' mov ecx,[eax]
  95. ' mov edx,[ebx]
  96. ' mov [eax],edx
  97. ' mov [ebx],ecx
  98. ' popad
复制代码

相关帖子

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

本版积分规则