|
- .版本 2
- .支持库 spec
- .程序集 程序集1
- .子程序 _启动子程序, 整数型, , 请在本子程序中放置易模块初始化代码
- _临时子程序 () ' 在初始化代码执行完毕后调用测试代码
- 返回 (0) ' 可以根据您的需要返回任意数值
- .子程序 _临时子程序
- .局部变量 文本, 文本型
- 文本 = “Hello World! 中文测试” + #换行符 + “test”
- 调试输出 (文本, 取文本字数 (文本), 取文本长度 (文本))
- .子程序 取文本字数, 整数型, 公开, 统计一个文本字符串有多少个字,1个汉字或全角符号计1字、1个半角符号空格计1字,回车换行符不计数
- .参数 文本数据, 文本型, , 参数值指定欲检查其字数的文本数据。
- 置入代码 ({ 83, 81, 139, 69, 8, 131, 248, 0, 127, 4, 51, 192, 235, 64, 139, 0, 131, 248, 0, 127, 4, 51, 192, 235, 53, 51, 201, 138, 24, 10, 219, 117, 6, 139, 193, 235, 41, 235, 26, 128, 251, 128, 118, 20, 128, 251, 255, 116, 15, 138, 120, 1, 10, 255, 117, 3, 64, 235, 6, 131, 192, 2, 235, 1, 64, 128, 251, 13, 116, 6, 128, 251, 10, 116, 1, 65, 235, 205, 89, 91, 201, 194, 4, 0 })
- ' push ebx
- ' push ecx
- ' mov eax,[ebp+8]
- ' .if sdword ptr eax <= 0
- ' xor eax,eax
- ' jmp ASM_END
- ' .endif
- ' mov eax,[eax]
- ' .if sdword ptr eax <= 0
- ' xor eax,eax
- ' jmp ASM_END
- ' .endif
- ' xor ecx,ecx
- ' .while 1
- ' mov bl,[eax]
- ' .if !bl
- ' mov eax,ecx
- ' jmp ASM_END
- ' .elseif bl > 128 && bl != 255
- ' mov bh,[eax+1]
- ' .if !bh
- ' inc eax
- ' .else
- ' add eax,2
- ' .endif
- ' .else
- ' inc eax
- ' .endif
- ' .if bl != 13 && bl != 10
- ' inc ecx
- ' .endif
- ' .endw
- ' ASM_END:
- ' pop ecx
- ' pop ebx
- ' leave
- ' retn 4
- 返回 (0)
复制代码 |
|