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

从F到0 - From F to 0

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

易语言MASM置入代码实现整数型的大于/小于/大于等于/小于等于/等于比较(返回逻辑型)

[复制链接]
发表于 2022-4-5 10:40:25 | 显示全部楼层 |阅读模式
1.png
  1. .版本 2

  2. .程序集 程序集1

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

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

  7. .子程序 _临时子程序
  8. .局部变量 A, 整数型
  9. .局部变量 B, 整数型
  10. .局部变量 大于, 逻辑型
  11. .局部变量 小于, 逻辑型
  12. .局部变量 大于等于, 逻辑型
  13. .局部变量 小于等于, 逻辑型
  14. .局部变量 等于, 逻辑型
  15. .局部变量 C, 整数型

  16. .判断循环首 (真)
  17.     A = 取随机整数 ()
  18.     B = 取随机整数 ()
  19.     大于 = A > B
  20.     小于 = A < B
  21.     大于等于 = A ≥ B
  22.     小于等于 = A ≤ B
  23.     等于 = A = B
  24.     .判断开始 (整数型_大于 (A, B) ≠ 大于)
  25.         暂停 ()
  26.     .判断 (整数型_小于 (A, B) ≠ 小于)
  27.         暂停 ()
  28.     .判断 (整数型_大于等于 (A, B) ≠ 大于等于)
  29.         暂停 ()
  30.     .判断 (整数型_小于等于 (A, B) ≠ 小于等于)
  31.         暂停 ()
  32.     .判断 (整数型_等于 (A, B) ≠ 等于)
  33.         暂停 ()
  34.     .默认

  35.     .判断结束
  36.     C = C + 1
  37.     .如果真 (C ≥ 1000000)
  38.         C = 0
  39.         输出调试文本 (取现行时间 ())
  40.     .如果真结束

  41. .判断循环尾 ()





  42. .子程序 取随机整数, 整数型
  43. .局部变量 字节集, 字节集, 静态
  44. .局部变量 计数, 整数型

  45. .如果真 (取字节集长度 (字节集) ≠ 4)
  46.     字节集 = 取空白字节集 (4)
  47. .如果真结束
  48. .计次循环首 (4, 计数)
  49.     字节集 [计数] = 取随机数 (, )
  50. .计次循环尾 ()

  51. 返回 (取字节集数据 (字节集, #整数型, ))


  52. .子程序 整数型_大于, 逻辑型, 公开
  53. .参数 被比较值, 整数型
  54. .参数 比较值, 整数型

  55. 置入代码 ({ 139, 69, 8, 59, 69, 12, 126, 7, 184, 1, 0, 0, 0, 235, 2, 51, 192, 201, 194, 8, 0 })
  56. ' mov eax,[ebp+8]
  57. ' .if sdword ptr eax > [ebp+12]
  58. ' mov eax,1
  59. ' .else
  60. ' xor eax,eax
  61. ' .endif
  62. ' leave
  63. ' retn 8
  64. 返回 (假)

  65. .子程序 整数型_小于, 逻辑型, 公开
  66. .参数 被比较值, 整数型
  67. .参数 比较值, 整数型

  68. 置入代码 ({ 139, 69, 8, 59, 69, 12, 125, 7, 184, 1, 0, 0, 0, 235, 2, 51, 192, 201, 194, 8, 0 })
  69. ' mov eax,[ebp+8]
  70. ' .if sdword ptr eax < [ebp+12]
  71. ' mov eax,1
  72. ' .else
  73. ' xor eax,eax
  74. ' .endif
  75. ' leave
  76. ' retn 8
  77. 返回 (假)

  78. .子程序 整数型_大于等于, 逻辑型, 公开
  79. .参数 被比较值, 整数型
  80. .参数 比较值, 整数型

  81. 置入代码 ({ 139, 69, 8, 59, 69, 12, 124, 7, 184, 1, 0, 0, 0, 235, 2, 51, 192, 201, 194, 8, 0 })
  82. ' mov eax,[ebp+8]
  83. ' .if sdword ptr eax >= [ebp+12]
  84. ' mov eax,1
  85. ' .else
  86. ' xor eax,eax
  87. ' .endif
  88. ' leave
  89. ' retn 8
  90. 返回 (假)

  91. .子程序 整数型_小于等于, 逻辑型, 公开
  92. .参数 被比较值, 整数型
  93. .参数 比较值, 整数型

  94. 置入代码 ({ 139, 69, 8, 59, 69, 12, 127, 7, 184, 1, 0, 0, 0, 235, 2, 51, 192, 201, 194, 8, 0 })
  95. ' mov eax,[ebp+8]
  96. ' .if sdword ptr eax <= [ebp+12]
  97. ' mov eax,1
  98. ' .else
  99. ' xor eax,eax
  100. ' .endif
  101. ' leave
  102. ' retn 8
  103. 返回 (假)

  104. .子程序 整数型_等于, 逻辑型, 公开
  105. .参数 被比较值, 整数型
  106. .参数 比较值, 整数型

  107. 置入代码 ({ 139, 69, 8, 59, 69, 12, 117, 7, 184, 1, 0, 0, 0, 235, 2, 51, 192, 201, 194, 8, 0 })
  108. ' mov eax,[ebp+8]
  109. ' .if eax == [ebp+12]
  110. ' mov eax,1
  111. ' .else
  112. ' xor eax,eax
  113. ' .endif
  114. ' leave
  115. ' retn 8
  116. 返回 (假)
复制代码

相关帖子

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

本版积分规则

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

腾讯云安全认证

GMT+8, 2024-4-20 11:15 , Processed in 0.420024 second(s), 22 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

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