Форум программистов
 
О проблемах, например, с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу здесь за 20 тыс руб в месяц! alarforum@yandex.ru


Ответ
 
Опции темы
Старый 19.04.2011, 16:02   #1
Zart
 
Регистрация: 07.12.2009
Сообщений: 8
По умолчанию FASM. Считать содержимое файла в строку и затем записать обратно в файл

Есть программа которая редактирует строку, убирает лишние символы, но она работает только со строкой. Надо переделать программу чтобы она сначала считала с файла по введённому адресу весь текст, записала в строку, далее строка отредактируется (код ниже), и затем обратно запишется уже изменённая строка в тот же файл.
Помогите пожалуйста, с файлами вообще не умею работать...
Код:
FORMAT PE CONSOLE
include 'win32axp.INC'

.data
        string db '12/*3456*/789',0

.code
start:

    mov     eax, string
    mov     ecx, eax
    push    eax

skip_lead1:
    mov     dl, [ecx]
    inc     ecx
    inc     eax
    or      dl, dl
    je      show
    cmp     dl, '/'
    jnz      skip_lead1

skip_lead2:
    mov     dl, [ecx]
    or      dl, dl
    je      show
    cmp     dl, '*'
    jnz      skip_lead1
    inc     ecx
    dec      eax
    dec      eax

skip_lead:
    mov     dl, [ecx]
    inc     ecx
    or      dl, dl
    je      show
    cmp     dl, '*'
    jnz      skip_lead

skip_lead3:
    mov     dl, [ecx]
    or      dl, dl
    je      show
    cmp     dl, '/'
    jnz      skip_lead
    inc     ecx

shift_left:
    mov     dl, [ecx]
    inc     eax
    inc     ecx
    mov     [eax], dl
    or      dl, dl
    jnz     shift_left
    pop     ecx
    mov     eax,ecx
    push    ecx
    jmp     skip_lead1

show:
    pop      ecx
    dec      eax
    sub      eax, ecx
    xchg     eax, ecx
    invoke   GetStdHandle, STD_OUTPUT_HANDLE
    invoke   WriteConsole, eax, string, ecx, 0, 0
    invoke   Sleep, 5000
    invoke   ExitProcess, 0

.end start
Zart вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка! Нужно записать содержимое Memo в файл Kati Помощь студентам 3 19.10.2010 21:16
занести инфу в файл , затем считать её при новом сеансе frmSm Общие вопросы C/C++ 1 04.06.2010 14:33
Как записать (считать) динамическую строку в (из) файл(а)? C++ Сергей089 Помощь студентам 2 10.02.2010 22:00
записать содержимое Listview в файл Leo20 Общие вопросы Delphi 0 26.11.2009 13:01
Записать содержимое буфера обмена в файл. sw3n Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 17.07.2009 01:39


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS
Здесь нужно купить рекламу за 7 тыс руб в месяц! )
пишите сюда - alarforum@yandex.ru
ИКС 840