一般有专门的字符操作指令,如: lodsb stosb movsb rep/repz/repnz cmpsb scasb等等, 这些指令其实速度很慢,好的方法是用寄存器间接寻址,如: lodsb mov al,byte ptr [esi] inc esi stosb mov byte ptr [edi],al inc edi 等等,千万不要在程序中使用rep movsb,这样做速度很慢的。 例:一个字符串复制函数 lstrcpyn proc uses esi edi ecx,src,des,ilen mov ecx,ilen ;要复制的长度 mov esi,src mov edi,des @@: mov al,byte ptr [esi] inc esi mov byte ptr [edi],al cmp al,0 ;终止符 jz @F loopnz @B @@: ret lstrcpyn endp  
|