|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
23.01.2009, 22:25 | #1 |
Пользователь
Регистрация: 02.01.2008
Сообщений: 21
|
Поиск строки в текстовом файле
столкнулся с такой проблемой:
создал я допустим текстовый файл; заполнил его текстом; после этого ввёл строку, которую нужно найти в этом файле и... не знаю как реализовать поиск этой строки в этом файле, а затем (если это строка существует) заменить её на другую строку догадываюсь, что нужно использовать функцию 42h (прямой доступ к файлу), но как это реализовать программно, а затем еще заменить эту строку на другую строку (возможно стереть найденную строку, а затем записать указанную; или через переменные и регистры с помощью команд LODS, STOS, MOVS) - к сожалению не знаю искал в инете, в разных FAQ-ах, в книжке, но кроме поиска САМИХ ФАЙЛОВ в каталоге ничего не нашел (возможно плохо искал, не ругайте если что ) прошу помощи, буду рад каждому совету (а еще лучше самой реализации этих оперций ) P/S так как я не знаю, есть ли различия в реализации этого метода на FASM, MASM, TASM, NASM, то скажу сразу, что меня интересует в первую очередь TASM сразу говорю спасибо, если Вы решили помочь |
24.01.2009, 00:04 | #2 |
Пользователь
Регистрация: 07.12.2008
Сообщений: 18
|
Держи блок сравнения, вставишь смещения в SI и DI
Код:
Последний раз редактировалось rpy3uH; 25.01.2009 в 15:50. |
24.01.2009, 13:59 | #3 |
Форумчанин
Регистрация: 02.04.2008
Сообщений: 358
|
строки одинаковы? или может быть поразному?
icq:3(один)7748666 mail:airyashov(a)inbox.ru пишите помогу недорого
неплохо пишу на ассемблере для 80х86
icq: 3(один)7748666 mail: airyashov(а)inbox.ru |
24.01.2009, 14:50 | #4 | |
Пользователь
Регистрация: 02.01.2008
Сообщений: 21
|
Цитата:
попробую, не подскажешь что такое DW 0174 и DW F3E2? этот код предназначен для сравнения последовательно каждого символа первой строки с каждым символом второй строки? |
|
24.01.2009, 14:56 | #5 | |
Пользователь
Регистрация: 02.01.2008
Сообщений: 21
|
Цитата:
а чем там собственно помогать за деньги?, я не лентяй и программу могу написать сам, но мне неизвестно с помощью чего можно искать строку в файле, а затем заменить её |
|
24.01.2009, 19:23 | #6 | |
Пользователь
Регистрация: 07.12.2008
Сообщений: 18
|
Цитата:
DW F3E2 это машинный эквивалент loop -0D байт от конца loop. Верно, если равны: cx будет 0000, нет: (изн. cx)-(кон сx)=(номер не совпавших элементов). |
|
24.01.2009, 20:30 | #7 | |
Пользователь
Регистрация: 02.01.2008
Сообщений: 21
|
Цитата:
а как мне это к началу файла присобачить? установить указатель на начало файла, затем загружать каждую строку текста в SI и сравнивать с указаной строкой в DI? и организовать поиск от начала до конца файла с помощью цикла, функцию которого будет исполнять команда rep? |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Поиск в текстовом файле! | Straiker | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 18.01.2009 10:07 |
Поиск в текстовом файле | KaimaS | Общие вопросы C/C++ | 0 | 12.11.2008 17:39 |
Поиск символов в текстовом файле. | Uomo | Общие вопросы Delphi | 8 | 24.10.2007 15:57 |