|
发表于 2019-10-11 09:00:00
|阅读模式
- .版本 2
- .程序集 程序集1
- .子程序 _启动子程序, 整数型, , 请在本子程序中放置易模块初始化代码
- _临时子程序 () ' 在初始化代码执行完毕后调用测试代码
- 返回 (0) ' 可以根据您的需要返回任意数值
- .子程序 _临时子程序
- ' 本名称子程序用作测试程序用,仅在开发及调试环境中有效,编译发布程序前将被系统自动清空,请将所有用作测试的临时代码放在本子程序中。 ***注意不要修改本子程序的名称、参数及返回值类型。
- 输出调试文本 (长整数型数组_位与 ({ 1.234567890123e+018, 1.298471298347e+015, -1234567890 }))
- 输出调试文本 (长整数型数组_位或 ({ 1.234567890123e+018, 1.298471298347e+015, -1234567890 }))
- 输出调试文本 (长整数型数组_位异或 ({ 1.234567890123e+018, 1.298471298347e+015, -1234567890 }))
- .子程序 长整数型数组_位与, 长整数型, 公开
- .参数 长整数型数组, 长整数型, 数组
- 置入代码 ({ 83, 81, 86, 87, 139, 69, 8, 51, 210, 11, 192, 117, 2, 235, 60, 139, 0, 11, 192, 117, 2, 235, 52, 139, 88, 4, 11, 219, 117, 4, 51, 192, 235, 41, 131, 192, 8, 51, 201, 51, 246, 51, 255, 247, 214, 247, 215, 235, 18, 35, 52, 200, 35, 124, 200, 4, 11, 246, 117, 6, 11, 255, 117, 2, 235, 5, 65, 59, 203, 114, 234, 139, 198, 139, 215, 95, 94, 89, 91, 201, 194, 4, 0 })
- ' push ebx
- ' push ecx
- ' push esi
- ' push edi
- ' mov eax,[ebp+8]
- ' xor edx,edx
- ' .if eax == 0
- ' jmp ASM_END
- ' .endif
- ' mov eax,[eax]
- ' .if eax == 0
- ' jmp ASM_END
- ' .endif
- ' mov ebx,[eax+4]
- ' .if ebx == 0
- ' xor eax,eax
- ' jmp ASM_END
- ' .endif
- ' add eax,8
- ' xor ecx,ecx
- ' xor esi,esi
- ' xor edi,edi
- ' not esi
- ' not edi
- ' .while ecx < ebx
- ' and esi,[eax+ecx*8]
- ' and edi,[eax+ecx*8+4]
- ' .if esi == 0 && edi == 0
- ' .break
- ' .endif
- ' inc ecx
- ' .endw
- ' mov eax,esi
- ' mov edx,edi
- ' ASM_END:
- ' pop edi
- ' pop esi
- ' pop ecx
- ' pop ebx
- ' leave
- ' retn 4
- 返回 (0)
- .子程序 长整数型数组_位或, 长整数型, 公开
- .参数 长整数型数组, 长整数型, 数组
- 置入代码 ({ 83, 81, 86, 87, 139, 69, 8, 51, 210, 11, 192, 117, 2, 235, 58, 139, 0, 11, 192, 117, 2, 235, 50, 139, 88, 4, 11, 219, 117, 4, 51, 192, 235, 39, 131, 192, 8, 51, 201, 51, 246, 51, 255, 235, 20, 11, 52, 200, 11, 124, 200, 4, 131, 254, 255, 117, 7, 131, 255, 255, 117, 2, 235, 5, 65, 59, 203, 114, 232, 139, 198, 139, 215, 95, 94, 89, 91, 201, 194, 4, 0 })
- ' push ebx
- ' push ecx
- ' push esi
- ' push edi
- ' mov eax,[ebp+8]
- ' xor edx,edx
- ' .if eax == 0
- ' jmp ASM_END
- ' .endif
- ' mov eax,[eax]
- ' .if eax == 0
- ' jmp ASM_END
- ' .endif
- ' mov ebx,[eax+4]
- ' .if ebx == 0
- ' xor eax,eax
- ' jmp ASM_END
- ' .endif
- ' add eax,8
- ' xor ecx,ecx
- ' xor esi,esi
- ' xor edi,edi
- ' .while ecx < ebx
- ' or esi,[eax+ecx*8]
- ' or edi,[eax+ecx*8+4]
- ' .if esi == -1 && edi == -1
- ' .break
- ' .endif
- ' inc ecx
- ' .endw
- ' mov eax,esi
- ' mov edx,edi
- ' ASM_END:
- ' pop edi
- ' pop esi
- ' pop ecx
- ' pop ebx
- ' leave
- ' retn 4
- 返回 (0)
- .子程序 长整数型数组_位异或, 长整数型, 公开
- .参数 长整数型数组, 长整数型, 数组
- 置入代码 ({ 83, 81, 86, 87, 139, 69, 8, 51, 210, 11, 192, 117, 2, 235, 46, 139, 0, 11, 192, 117, 2, 235, 38, 139, 88, 4, 11, 219, 117, 4, 51, 192, 235, 27, 131, 192, 8, 51, 201, 51, 246, 51, 255, 235, 8, 51, 52, 200, 51, 124, 200, 4, 65, 59, 203, 114, 244, 139, 198, 139, 215, 95, 94, 89, 91, 201, 194, 4, 0 })
- ' push ebx
- ' push ecx
- ' push esi
- ' push edi
- ' mov eax,[ebp+8]
- ' xor edx,edx
- ' .if eax == 0
- ' jmp ASM_END
- ' .endif
- ' mov eax,[eax]
- ' .if eax == 0
- ' jmp ASM_END
- ' .endif
- ' mov ebx,[eax+4]
- ' .if ebx == 0
- ' xor eax,eax
- ' jmp ASM_END
- ' .endif
- ' add eax,8
- ' xor ecx,ecx
- ' xor esi,esi
- ' xor edi,edi
- ' .while ecx < ebx
- ' xor esi,[eax+ecx*8]
- ' xor edi,[eax+ecx*8+4]
- ' inc ecx
- ' .endw
- ' mov eax,esi
- ' mov edx,edi
- ' ASM_END:
- ' pop edi
- ' pop esi
- ' pop ecx
- ' pop ebx
- ' leave
- ' retn 4
- 返回 (0)
复制代码 |
|