нужно
открыть файл с текстом;
создать второй файл;
считать из первого файла текст;
записать во второй файл.
помогите написать програмку плиз!!!
есть исходники:
открытие
Код:
;----------------------------------------------------------
;prg07_02.asm - программа демонстрации открытия существующего файла функцией 3Dh файла my_file.txt в текущем каталоге.
;----------------------------------------------------------
masm
model small
.data
handle dw 0 ;дескриптор файла
filename db 'my_file.txt',0
point_fname dd filename
.stack 256
.486
.code
main:
mov ax,@data ;адрес сегмента данных в регистр ax
mov ds,ax ;ax в ds
mov al,02h ;режим доступа
lds dx,point_fname ;формируем указатель на имя файла
mov ah,3dh ;номер функции DOS
int 21h ;открываем файл
jc exit ;переход, в случае ошибки
;-------------------------------------------------------------------
;действия при успешном открытии файла:
mov handle,ax ;сохраним дескриптор файла
;-------------------------------------------------------------------
exit:
;выход из программы
mov ax,4c00h ;пересылка 4c00h в регистр ax
int 21h ;вызов прерывания с номером 21h
end main ;конец программы с точкой входа main
создание
Код:
;----------------------------------------------------------
;prg07_01.asm - программа демонстрации создания функцией 3ch файла my_file.txt в текущем каталоге.
;----------------------------------------------------------
masm
model small
.data
handle dw 0 ;дескриптор файла
filename db 'my_file.txt',0
point_fname dd filename
.stack 256
.486
.code
main:
mov ax,@data ;адрес сегмента данных - в регистр ax
mov ds,ax ;ax в ds
xor cx,cx ;атрибуты файла - обычный файл
lds dx,point_fname ;формируем указатель на имя файла
mov ah,3ch ;номер функции DOS
int 21h ;создаем файл
jc exit ;переход, в случае ошибки
;-------------------------------------------------------------------
;действия при успешном создании файла:
mov handle,ax ;сохраним дескриптор файла
;-------------------------------------------------------------------
exit:
;выход из программы
mov ax,4c00h ;пересылка 4c00h в регистр ax
int 21h ;вызов прерывания с номером 21h
end main ;конец программы с точкой входа main
закрытие файла
Код:
;----------------------------------------------------------
;prg07_05.asm - программа демонстрации закрытия файла функцией 3Eh.
;----------------------------------------------------------
masm
model small
.data
handle dw 0 ;дескриптор файла
filename db 'my_file.txt',0
point_fname dd filename
.stack 256
.486
.code
main:
mov ax,@data ;адрес сегмента данных - в регистр ax
mov ds,ax ;ax в ds
xor cx,cx ;атрибуты файла - обычный файл
lds dx,point_fname ;формируем указатель на имя файла
mov ah,5bh ;номер функции DOS
int 21h ;открываем файл
jnc m1 ;обойдем открытие файла
mov al,02h ;режим доступа
mov ah,3dh ;номер функции DOS
int 21h ;открываем файл
jc exit ;переход, в случае ошибки
m1:
;-------------------------------------------------------------------
;действия при успешном открытии файла:
mov handle,ax ;сохраним дескриптор файла
m2:
;закрываем файл:
mov ah,3eh
mov bx,handle
int 21h
jnc exit ;переход, если нет ошибки
;обработка ошибки
;… … …
jmp m2 ;повторяем операцию закрытия
;-------------------------------------------------------------------
exit:
;выход из программы
mov ax,4c00h ;пересылка 4c00h в регистр ax
int 21h ;вызов прерывания с номером 21h
end main ;конец программы с точкой входа main