Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Лабораторна Робота №15





 

ВИКОРИСТАННЯ ПЕРЕРИВАННЯ MS-DOS

ДЛЯ РОБОТИ З ФАЙЛАМИ

 

15.1 Мета роботи

 

Освоїти переривання MS-DOS для роботи з файлами.

 

15.2 Теоретичні відомості

Для роботи з файлами в 21h перериванні MSDOS реалізовані наступні функції:

 

1 Створення файлу:

Вхід: АН=3сh; CX = атрибути файлу (значення бітів: 0=1– тільки читання; 1=1 – скритий файл; 2=1 – системний файл; 3=0 – ігнорується; 4=0; 5 – біт архівації; 6..15=0 – резерв); DS:DX – ім’я файлу.
Вихід: CFh=0, АХ – дескриптор файлу, CFh=1, АХ – код помилки (3 – не має вказаного в ім’ї файлу шляху; 4 – не має свобідного дескриптора файлу; 5 – не має доступу).
Ім’я файлу вказується у форматі:

dataseg
file1 db ‘file.txt’,0

 

2 Відкриття існуючого файлу:

Вхід: АН=3Dh; AL = режим доступу
значення бітів: 2..0:
000 – тільки читання;
001 – тільки запис;
010 – читання/ запис
3 – резерв (0)
6..4 – режим сумісного використання:
000 – режим сумісності;
001 – заборона читання/ запису другими програмами;
010 – заборона запису другою програмою;
011 – заборона читання другими програмами;
100 – повний доступ;

7 – наслідування, якщо рівний “1”, то файл належить тільки поточному процесу.

DS:DX – ім’я файлу.

Вихід: CFh=0, АХ – дескриптор файлу, CFh=1, АХ – код помилки (3 – не має вказаного в ім’ї файлу шляху; 4 – не має свобідного дескриптора файлу; 5 – не має доступу).
Функція встановлює покажчик файлу на початок.

 

3 Закриття файлу:

Вхід: АН=3еh; ВX = дескриптор файлу отриманий при відкритті
Вихід: CFh=0, АХ – не визначений, CFh=1, АХ – код помилки 6-недопустимий дескриптор.

 

4 Запис в файл:

Вхід: АН=40h; ВX = дескриптор файлу, СХ – кількість байт для запису; DS:DX – покажчик на область пам’яті з якої будуть писатися дані.

Вихід: CFh=0, АХ – кількість записаних в файл байт, CFh=1, АХ – код помилки 5 – в доступі відмовлено, 6-недопустимий дескриптор.

5 Читання з файлу:

Вхід: АН=3fh; ВX = дескриптор файлу, СХ – кількість байт для читання; DS:DX – покажчик на область пам’яті куди будуть писатися прочитані дані.

Вихід: CFh=0, АХ – кількість почитаних з файлу байт, CFh=1, АХ – код помилки 5 – в доступі відмовлено, 6-недопустимий дескриптор.

 

6 Встановлення поточної файлової позиції:

Вхід: АН=3fh; ВX = дескриптор файлу, AL – початкове положення відносно якого відбуваються операції читання запису (00h – зміщення (беззнакове значення в CX:DX) від початку файлу; 01h – зміщення (знакове значення в CX:DX) від поточної позиції; 02h – зміщення (знакове значення в CX:DX) від кінця файлу); CX:DX – зміщення нової позиції в файлі відносно початкової.

Вихід: CFh=0, АХ – значення нової позиції в файлі (в байтах), CFh=1, АХ – код помилки 1 – не вірне значення в AL, 6-недопустимий дескриптор.

 







Date: 2015-12-12; view: 371; Нарушение авторских прав



mydocx.ru - 2015-2024 year. (0.006 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию