Дашка Беляшина
Дашка Беляшина

Работа с файлами в АССЕМБЛЕРЕ. Надо считывать файл, путь указывает пользователь при запуске программу. Помогите!



вот как ясоздаю:
fcbr1 label byte ; параметры файла, куда сохраняем результат
fcbdriv1 db 06 ; номер диска: 01-А, 02-В, 03-С и т. д.
fcbname1 db 'File1 ' ; имя файла, куда записываем
fcbextr1 db 'txt' ; расширение (тип) файла
fcbblok1 dw 0000 ; размер блока
fcbrcsz1 dw 0000 ;\
fcbflsz1 dd ? ; \
dw ? ; \параметры для ОС
dt ? ; /она их устанавливает сама
fcbsqrc1 db 0 ; /
fcb1ondd ? ;/

Но тут файл по умолчанию в диске №6 и название файла File1.txt
А мне надо чтобы не программист задавал имя и путь, а пользователь программы

Юля Морозова
Юля Морозова

> вот как ясоздаю
Ничего вы здесь не создаёте. Это просто поля FCB (блока управления файлом) в сегменте данных. А где сама программа?

Гораздо проще работать с файлами с помощью дескрипторов.

Пример программы, запрашивающей имя файла, можно вместе с полным путём, и считывающей в буфер размером 4 КБ содержимое этого файла:

.model small
.stack 100h

.data
Prompt db 'Введите имя файла: $'
Buffer db 65, ?,65 dup (?)
Handle dw ?
FileLen dw ?
FileDat db 4096 dup (?)

.code
N87514294:
mov si,@data
mov ds,si
lea dx,Prompt
mov ah,9
int 21h
inc ah
lea dx,Buffer
int 21h
lea di,Buffer + 2
xor ch,ch
mov cl,Buffer + 1
add di,cx
mov [di],ch
;Открыть файл для чтения
mov ah,3Dh
lea dx,Buffer + 2
xor al,al
int 21h
mov Handle,ax; Сохранение дескриптора открытого файла
;Считать данные из файла
mov ah,3Fh
mov bx,Handle
lea dx,FileDat
mov cx,4096
int 21h
mov FileLen,ax; Кол-во считанных байтов данных
;Закрыть файл
mov ah,3Eh
mov bx,Handle
int 21h

;...
;Что-то делаете со считанными данными
;...

mov ah,4Ch
int 21h
end N87514294

Похожие вопросы
Помогите пожалуйста!! Составьте программу, считывающую с диска файл, в котором записана некоторая последовательность ...
Как из подпапки задать путь к файлу в папку, что выше. путь указывается в html-папке
помогите написать программу в с++ или на ассемблере
Помогите написать программу на языке ассемблера!!!!
Помогите откомментировать программу на ассемблере....
помогите написать программы в ассемблере
[Ассемблер] Помогите дописать комментарии к программе
Помогите закоментировать программу Ассемблер Tasm
Помогите составить программу на ассемблере для микроконтроллера КМ1816ВЕ51
Вот в архиве winrar есть запароленный файл, откуда сам winrar программа считывает пароль?