|
- .版本 2
- .支持库 spec
- .程序集 程序集1
- .子程序 _启动子程序, 整数型, , 请在本子程序中放置易模块初始化代码
- _临时子程序 () ' 在初始化代码执行完毕后调用测试代码
- 返回 (0) ' 可以根据您的需要返回任意数值
- .子程序 _临时子程序
- ' 本名称子程序用作测试程序用,仅在开发及调试环境中有效,编译发布程序前将被系统自动清空,请将所有用作测试的临时代码放在本子程序中。 ***注意不要修改本子程序的名称、参数及返回值类型。
- 调试输出 (文本整数到整数 (“00000000001234567890”))
- 调试输出 (文本整数到整数 (“111222333”))
- 调试输出 (到整数 (“12345678901”), 文本整数到整数 (“12345678901”))
- 调试输出 (到整数 (“123D456”), 文本整数到整数 (“123D456”))
- 调试输出 (到整数 (“4294967295”), 文本整数到整数 (“4294967295”))
- 调试输出 (到整数 (“0”), 文本整数到整数 (“0”))
- 调试输出 (到整数 (“000100”), 文本整数到整数 (“000100”))
- .子程序 文本整数到整数, 整数型, 公开, 不支持负数,自动跳过开头的0,10位数以上的不转换
- .参数 文本, 文本型
- 置入代码 ({ 82, 139, 69, 8, 139, 0, 232, 7, 0, 0, 0, 139, 194, 90, 201, 194, 4, 0, 83, 81, 86, 51, 210, 51, 219, 51, 201, 190, 10, 0, 0, 0, 235, 48, 138, 28, 1, 128, 251, 48, 114, 5, 128, 251, 57, 118, 4, 235, 37, 235, 30, 128, 251, 48, 117, 7, 10, 255, 117, 3, 70, 235, 18, 183, 1, 128, 235, 48, 107, 210, 10, 83, 129, 227, 255, 0, 0, 0, 3, 211, 91, 65, 59, 206, 114, 204, 94, 89, 91, 195 })
- ' push edx
- ' mov eax,[ebp+8]
- ' mov eax,[eax]
- ' call TEXT2INT
- ' mov eax,edx
- ' pop edx
- ' leave
- ' retn 4
- ' ;文本整数转整数型(不支持负数,遇到其他字符终止转换)
- ' ;EAX:文本指针 EDX:整数输出
- ' TEXT2INT:
- ' push ebx
- ' push ecx
- ' push esi
- ' xor edx,edx
- ' xor ebx,ebx
- ' xor ecx,ecx
- ' mov esi,10
- ' .while ecx < esi
- ' mov bl,[eax+ecx]
- ' .if bl < 48 || bl > 57
- ' .break
- ' .elseif bl == 48 && !bh
- ' inc esi
- ' .else
- ' mov bh,1
- ' sub bl,48
- ' imul edx,10
- ' push ebx
- ' and ebx,255
- ' add edx,ebx
- ' pop ebx
- ' .endif
- ' inc ecx
- ' .endw
- ' pop esi
- ' pop ecx
- ' pop ebx
- ' ret
- 返回 (0)
复制代码 |
|