速度超级快的strlen汇编版

源码是用置入代码来实现的。

' mov eax,dword [ebp+08h]
' mov eax,dword [eax]
' cmp eax,0
' je exit
' push edx
' push edi
' lea edx,dword [eax+03h]

' label_b:
' mov edi,dword [eax]
' add eax,4
' lea ecx,dword [edi-01010101h]
' not edi
' and ecx,edi
' and ecx,80808080h
' jnz nxt

' mov edi,dword [eax]
' add eax,4
' lea ecx,dword [edi-01010101h]
' not edi
' and ecx,edi
' and ecx,80808080h
' jz label_b

' nxt:
' test ecx,00008080h
' jnz label_f
' shr ecx,16
' add eax,2

' label_f:
' shl cl,1
' sbb eax,edx
' pop edi
' pop edx
' exit:
' leave
' ret 04h
相关文件下载地址
©下载资源版权归作者所有;本站所有资源均来源于网络,仅供学习使用,请支持正版!

速度超级快的strlen汇编版》有0个想法

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注