Допустим что в памяти есть буфер, содержащий некие данные. Как наиболее быстрым образом организовать поиск в нём строки произвольной длины? Предложите пожалуйста свои варианты
mov ecx, Length mov ebx, Buffer jmp start next: inc ebx dec ecx start: jecxz no_str cmp byte [ebx], 32 jc next cmp byte [ebx], 127 loopz next jz no_str dec ecx jecxz no_str inc ebx cmp byte [ebx], 32 jc next cmp byte [ebx], 127 jz next ;найдена строка, как минимум из 2х символов no_str: ;строки не найдено
MSoft сам считывал побайтово до совпадения 1 символа, если он совпадал то сравнивал дворд но всё это медленно и глючно, потому запостил сюда
хм... ну у тебя, как мне кажется, самый быстрый способ в любом случае нужно искать первый байт, а потом сравнивать всю строку