Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Удаление каталога

Создание каталога

Чтение из файла или устройства

Чтение из файла в область памяти осуществляется функцией 3Fh. Вход: АН = 3Fh; BX = дескриптор файла; СХ = количество байтов для чтения; DS-.DX — указатель на область памяти, в которую помещаются прочитанные байты. Выход: CF = 0 — АХ = число действительно прочитанных байтов из файла; CF = 1 — АХ = код ошибки: 5 — в доступе отказано; 6 — недопустимый дескриптор.

Чтение данных производится начиная с текущей позиции в файле, которая после успешного чтения смещается на значение, равное количеству прочитанных байтов. Если в качестве файла используется стандартная консоль (клавиатура), то чтение производится до первого символа CR (carriage return) с кодом 0dh, соответствующего нажатию клавиши Enter. Это, кстати, еще один способ ввода данных с клавиатуры в программу. Кроме символов введенной строки в ее конец помещаются символы 0dh и 0ah. Это необходимо учитывать при задании размера буфера для ввода. Способ ввода данных с экрана с помощью функции 3Fh иллюстрирует приведенный ниже пример программы.

:prg07_10.asm - программа демонстрации ввода данных с экрана с помощью функции 3Fh.

.data

string db 80 dup (" ")

1en_string=$-string

point_fname dd string

.code

;.........вводим с экрана......-----.....----------------

mov bx,0;стандартный дескриптор – клавиатура

mov cx,len_string

lds dx,point_fname;формируем указатель на строку string

mov ah,3fh;номер функции DOS

int 21h

jc exit;переход в случае ошибки

;---------выводим на экран---------------------...........

;две строки ниже в данном случае можно опустить

mov bx,1;стандартный дескриптор – экран

mov cx, len_string

lds dx,point_fname;формируем указатель на строку string

mov ah,40h;номер функции DOS

int 21h;открываем файл

jc exit;переход в случае ошибки

 

Вход: АН = 39h; DS:DX — ASCIZ-строка пути к создаваемому каталогу. Выход: АХ = не определен (CF = 0); АХ - код ошибки (CF = 1): 3 — несуществующий путь; 5 — доступ запрещен.
Путь к каталогу должен содержать перечисление всех каталогов начиная от корневого на пути к создаваемому каталогу, при этом они, естественно, должны существовать. Последнее имя каталога — имя создаваемого каталога.

;prg07_15.asm - программа демонстрации создания каталога функцией 39h.

.data

dname db "c:windowsmy_dir",0

point_dname dd dname

.code

;.....создадим каталог в каталоге c:windows.......-.......

lds dx,point_dname;формируем указатель на строку с именем нового каталога

mov ah,39h;номер функции DOS

int 21h

jc exit;переход в случае ошибки

Вход: АН = 3Ah; DS:DX — ASCIZ-строка пути к удаляемому каталогу. Выход: CF = 0 — АХ = не определен; АХ = код ошибки (CF = 1): 3 — несуществующий путь; 5 — доступ запрещен; 10h — попытка удаления текущего каталога. Удаляемый каталог должен быть пустым.

:prg07_16.asm - программа демонстрации удаления каталога функцией 3Аh.

.data

dname db "c:windowsmy_dir",0

point_dname dd dname
.code

:----удалим каталог my_dir в каталоге c:windows---------

lds dx, point_dname;формируем указатель на строку с именем нового каталога

mov ah,3ah;номер функции DOS

int 21h

jc exit;переход в случае ошибки

<== предыдущая лекция | следующая лекция ==>
Лекция 2.6. Работа с файлами, каталогами и дисками под управлением MS-DOS | Лекция 3.1. Структура и программирование контроллера прерываний
Поделиться с друзьями:


Дата добавления: 2014-01-15; Просмотров: 302; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.016 сек.