|
- .版本 2
- .程序集 程序集1
- .子程序 _启动子程序, 整数型, , 请在本子程序中放置易模块初始化代码
- _临时子程序 () ' 在初始化代码执行完毕后调用测试代码
- 返回 (0) ' 可以根据您的需要返回任意数值
- .子程序 _临时子程序
- .局部变量 文本A, 文本型
- .局部变量 文本B, 文本型
- .局部变量 比较结果, 短整数型
- ' 本名称子程序用作测试程序用,仅在开发及调试环境中有效,编译发布程序前将被系统自动清空,请将所有用作测试的临时代码放在本子程序中。 ***注意不要修改本子程序的名称、参数及返回值类型。
- 置随机数种子 ()
- .判断循环首 (真)
- 文本A = 取随机文本 (取随机数 (1, 256), 真, 真, 真, 真, 真)
- 文本B = 取随机文本 (取随机数 (1, 256), 真, 真, 真, 真, 真)
- .如果真 (取随机数 (0, 100) = 0)
- 文本A = 文本B
- .如果真结束
- 比较结果 = 文本型_大小比较 (文本A, 文本B)
- .判断开始 (比较结果 = 0)
- 检查 (文本A = 文本B)
- .判断 (比较结果 = 1)
- 检查 (文本A > 文本B)
- .判断 (比较结果 = -1)
- 检查 (文本A < 文本B)
- .默认
- 暂停 ()
- .判断结束
- .如果真 (取随机数 (0, 1000) = 0)
- 输出调试文本 (文本A, 文本B)
- .如果真结束
- .判断循环尾 ()
- .子程序 文本型_大小比较, 短整数型, 公开, 太空船运算符比较 A等于B返回0 A大于B返回1 A小于B返回-1
- .参数 文本A, 文本型
- .参数 文本B, 文本型
- 置入代码 ({ 83, 86, 87, 139, 117, 8, 139, 54, 139, 125, 12, 139, 63, 51, 192, 138, 30, 138, 63, 56, 251, 116, 18, 56, 251, 118, 7, 184, 1, 0, 0, 0, 235, 5, 184, 255, 255, 255, 255, 235, 14, 10, 219, 116, 4, 10, 255, 117, 2, 235, 4, 70, 71, 235, 216, 95, 94, 91, 201, 194, 8, 0 })
- ' push ebx
- ' push esi
- ' push edi
- ' mov esi,[ebp+8]
- ' mov esi,[esi]
- ' mov edi,[ebp+12]
- ' mov edi,[edi]
- ' xor eax,eax
- ' TEXT_LOOP:
- ' mov bl,[esi]
- ' mov bh,[edi]
- ' .if bl != bh
- ' .if bl > bh
- ' mov eax,1
- ' .else
- ' mov eax,-1
- ' .endif
- ' jmp ASM_END
- ' .endif
- ' .if bl == 0 || bh == 0
- ' jmp ASM_END
- ' .endif
- ' inc esi
- ' inc edi
- ' JMP TEXT_LOOP
- ' ASM_END:
- ' pop edi
- ' pop esi
- ' pop ebx
- ' leave
- ' retn 8
- 返回 (0)
- .子程序 取随机文本, 文本型
- .参数 长度, 整数型
- .参数 允许数字, 逻辑型, 可空
- .参数 允许大写, 逻辑型, 可空
- .参数 允许小写, 逻辑型, 可空
- .参数 允许符号, 逻辑型, 可空
- .参数 允许空格, 逻辑型, 可空
- .局部变量 返回值, 字节型, , "0"
- .局部变量 类型, 字节型
- .局部变量 字符码, 字节型
- .如果真 (长度 < 1 或 允许数字 = 假 且 允许大写 = 假 且 允许小写 = 假 且 允许符号 = 假 且 允许空格 = 假)
- 返回 (“”)
- .如果真结束
- .循环判断首 ()
- 类型 = 取随机数 (0, 4)
- .判断开始 (类型 = 0)
- .如果 (允许数字)
- 字符码 = 取随机数 (48, 57)
- .否则
- 到循环尾 ()
- .如果结束
- .判断 (类型 = 1)
- .如果 (允许大写)
- 字符码 = 取随机数 (65, 90)
- .否则
- 到循环尾 ()
- .如果结束
- .判断 (类型 = 2)
- .如果 (允许小写)
- 字符码 = 取随机数 (97, 122)
- .否则
- 到循环尾 ()
- .如果结束
- .判断 (类型 = 3)
- .如果 (允许符号)
- 类型 = 取随机数 (0, 3)
- .判断开始 (类型 = 0)
- 字符码 = 取随机数 (33, 47)
- .判断 (类型 = 1)
- 字符码 = 取随机数 (58, 64)
- .判断 (类型 = 2)
- 字符码 = 取随机数 (91, 96)
- .判断 (类型 = 3)
- 字符码 = 取随机数 (123, 126)
- .默认
- .判断结束
- .否则
- 到循环尾 ()
- .如果结束
- .判断 (类型 = 4)
- .如果 (允许空格)
- 字符码 = 32
- .否则
- 到循环尾 ()
- .如果结束
- .默认
- .判断结束
- 加入成员 (返回值, 字符码)
- .循环判断尾 (取数组成员数 (返回值) < 长度)
- 返回 (到文本 (返回值))
复制代码 |
|