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

从F到0 - From F to 0

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

易语言MASM汇编置入代码检测文本型数组成员中是否包含0字节空文本字符串 (返回逻辑型)

[复制链接]
发表于 2019-7-28 20:21:36 | 显示全部楼层 |阅读模式

  1. .版本 2

  2. .程序集 程序集1

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


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

  6. .子程序 _临时子程序
  7. .局部变量 A, 文本型, , "0"

  8. ' 本名称子程序用作测试程序用,仅在开发及调试环境中有效,编译发布程序前将被系统自动清空,请将所有用作测试的临时代码放在本子程序中。 ***注意不要修改本子程序的名称、参数及返回值类型。
  9. A = { “1”, “2”, “3”, “4”, “5” }

  10. 输出调试文本 (文本型数组_是否有空文本 (A))
  11. 重定义数组 (A, 假, 0)

  12. 输出调试文本 (文本型数组_是否有空文本 (A))
  13. A = { “1”, “2”, “”, “4”, “5” }

  14. 输出调试文本 (文本型数组_是否有空文本 (A))


  15. .子程序 文本型数组_是否有空文本, 逻辑型, 公开, 文本型数组包含0字节空文本返回真,否则返回假,0成员数组也返回假。
  16. .参数 数组, 文本型, 数组

  17. 置入代码 ({ 83, 81, 82, 139, 69, 8, 139, 0, 139, 88, 4, 131, 192, 8, 51, 201, 235, 22, 139, 20, 136, 11, 210, 117, 4, 51, 192, 235, 20, 138, 18, 10, 210, 117, 4, 51, 192, 235, 10, 65, 59, 203, 114, 230, 184, 1, 0, 0, 0, 131, 240, 1, 90, 89, 91, 201, 194, 4, 0 })
  18. ' push ebx
  19. ' push ecx
  20. ' push edx
  21. ' mov eax,[ebp+8]
  22. ' mov eax,[eax]
  23. ' mov ebx,[eax+4]
  24. ' add eax,8
  25. ' xor ecx,ecx
  26. ' .while ecx<ebx
  27. ' mov edx,[eax+ecx*4]
  28. ' .if edx == 0
  29. ' xor eax,eax
  30. ' jmp ASM_END
  31. ' .endif
  32. ' mov dl,[edx]
  33. ' .if dl == 0
  34. ' xor eax,eax
  35. ' jmp ASM_END
  36. ' .endif
  37. ' inc ecx
  38. ' .endw
  39. ' mov eax,1
  40. ' ASM_END:
  41. ' xor eax,1
  42. ' pop edx
  43. ' pop ecx
  44. ' pop ebx
  45. ' leave
  46. ' retn 4

  47. 返回 (假)
复制代码

相关帖子

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

本版积分规则

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

腾讯云安全认证

GMT+8, 2024-4-20 10:38 , Processed in 0.548031 second(s), 20 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

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