Сейчас на форуме: Rio, ==DJ==[ZLO], Dart Raiden, Alf (+6 невидимых) |
eXeL@B —› Основной форум —› Вопрос по ASM поиск последованности байт |
Посл.ответ | Сообщение |
|
Создано: 27 сентября 2004 03:00 · Личное сообщение · #1 |
|
Создано: 27 сентября 2004 03:21 · Личное сообщение · #2 |
|
Создано: 27 сентября 2004 06:22 · Личное сообщение · #3 |
|
Создано: 27 сентября 2004 06:22 · Личное сообщение · #4 |
|
Создано: 27 сентября 2004 06:23 · Личное сообщение · #5 |
|
Создано: 27 сентября 2004 06:28 · Личное сообщение · #6 |
|
Создано: 27 сентября 2004 06:29 · Личное сообщение · #7 |
|
Создано: 27 сентября 2004 06:39 · Личное сообщение · #8 |
|
Создано: 27 сентября 2004 06:47 · Личное сообщение · #9 |
|
Создано: 27 сентября 2004 07:08 · Личное сообщение · #10 |
|
Создано: 27 сентября 2004 07:41 · Личное сообщение · #11 Как-как... (ворчливо). Так же , как и на C.. Сначала надо написать процедуру сравнения двух массивов заданных размеров. И это практически 80% всей работы. Процедуре, очевидно должны передаваться: 1. образец поиска 2. его размер 3. откудова ищем. если файл - имя файла, если память - адрес памяти. 4. если речь идет о памяти, очевидно нужно задать еще конечный адрес (или размер) чтобы остановить алгорим. Для файла этот вопрос очевиден.. |
|
Создано: 27 сентября 2004 10:34 · Личное сообщение · #12 |
|
Создано: 27 сентября 2004 10:37 · Личное сообщение · #13 |
|
Создано: 27 сентября 2004 13:12 · Личное сообщение · #14 |
|
Создано: 28 сентября 2004 02:40 · Личное сообщение · #15 Исходники ? По этому вопросу ? - стыд то какой. "Обучаю скоростному ASM программированию" : 1. Пишем все на с (например, Борланд) 2. Компилируем с ключом "-S" - получаем ассемблерный текст. 3. Взглядом ламера (переходящим во взгляд продвинутого ламера) смотрим на текст.asm и правим, рихтуем, курочим.. 4. Далее Tasm, Tlink.. |
|
Создано: 28 сентября 2004 03:13 · Поправил: S_T_A_S_ · Личное сообщение · #16 tum пишет: Так же , как и на C.. Зачем же.. можно и по другому. Например, использовать sse (хотя и не самый лучший способ) ; esi указывает на файл в памяти movq mm0, [pattern] movq mm1, [mask6] search: movq mm2, qword[esi] inc esi pand mm2,mm1 pcmpeqd mm2,mm0 packssdw mm2,mm2 movd eax, mm2 inc eax jnz search ; здесь esi = (адрес байта 75h) + 1 ; если "750433с0eb02" есть в файле pattern dq 02ebс0330475h mask6 dq 0FFFFFFFFFFFFh ЗЫ А если последовательности нет, то выход из цикла через SEH |
eXeL@B —› Основной форум —› Вопрос по ASM поиск последованности байт |