
- •4) Mov esi,6*2 ; 2 байта – размер элементов
- •Индексная адресация со смещением — режим адресации, при котором полный адрес формируется из двух компонентов:
- •Базовая индексная адресация со смещением — режим адресации, при котором полный адрес формируется максимум из трех компонентов:
- •Xor ecx,ecx ;обнуление есx
- •Структуры
- •Организовать обращение к элементам структуры.
- •Цепочечные команды или команды обработки строк символов
- •Организация обращения к элементам записи.
- •Работа с записями
- •1) Для выделения элемента записи необходимо:
- •2) Чтобы поместить измененный элемент на его место в запись необходимо:
- •3. В конце работы файл следует закрыть.
- •4. Признаком ошибки при выполнении функции dos является взведенный флаг с (переноса).
- •2. Создание файла с усечением существующего до нулевой длины.
- •LpFileName — указатель на asciiz-строку с именем (путем) открываемого или создаваемого файла;
- •DwDesiredAccess — тип доступа к файлу:
- •3) Создать и открыть новый файл
- •4) Чтение из файла или устройства
- •5) Переместить указатель чтения/записи
- •1) HFile – хэндл того файла, в котором перемещается указатель.
- •7) Запись в файл или устройство
- •8) Закрыть файл
- •9) Удаление файла
- •Функция 01h – ожидание ввода символа с эхопечатью
- •Функция 0ah – получение строки символов
- •1) Создать каталог
- •2) Удалить каталог
- •5) Определить текущий каталог
- •Перечень функций прерывания 21h, работающих с файлами, которые имеют длинные имена и соответствующие функции api Win32.
- •Перечислим функции api Win32, имеющие отношение к работе с файловой системой.
- •1) В Win32 получить время создания, время последнего доступа и время последней модификации файла можно с помощью функции GetFileTime.
- •3) В Win32 имеется функция GetFileInformationByHandle, с помощью которой можно получить все атрибуты файла:
- •Обзор прерываний bios
- •Int 10h, функция 0Dh. Чтение пиксела.
- •02H/03h - Чтение/запись секторов.
- •Прямое программирование видеобуфера в текстовом режиме
- •Текстовый режим. Доступ к памяти
- •Организация памяти в графическом режиме 12h
- •Вычисление адреса Пикселя по экранным координатам.
- •Рисование с помощью регистров Графического Контроллера
- •Установка цвета отдельных пикселей.
- •Прокрутка областей экрана, копирование областей экрана.
- •Чтение отдельных пикселей с экрана.
- •Рисование с помощью регистров Указателя Последовательности
- •Установка цвета ячейки пикселей.
1) Создать каталог
Функция DOS 39h — Создать каталог
Ввод:
АН = 39h
DS:DX = адрес ASCIZ-строки с путем, в котором все каталоги, кроме последнего, существуют.
Вывод:
CF = 0, если каталог создан
CF = 1 и АХ = 3, если путь не найден, 5 — если доступ запрещен
2) Удалить каталог
Функция DOS 3Ah — Удалить каталог
Ввод:
АН = 3Ah
DS:DX = адрес ASCIZ-строки с путем, последний каталог в котором будет удален (только если он пустой, не является текущим)
Вывод:
CF = 0, если каталог удален
CF = 1 и АХ = 3, если путь не найден, 5 — если доступ запрещен, 10h — если удаляемый каталог — текущий
5) Определить текущий каталог
Функция DOS 47h — Определить текущий каталог
Ввод:
АН = 47h
DL = номер диска (00h — текущий, 01h — А: и т.д.)
DS:SI = 64-байтный буфер для текущего пути (ASCIZ-строка без имени диска, первого и последнего символа «\»)
Вывод:
CF = 0 и АХ = 0100h, если операция выполнена
CF = 1 и АХ = 0Fh, если указан несуществующий диск
Перечень функций прерывания 21h, работающих с файлами, которые имеют длинные имена и соответствующие функции api Win32.
+
+
+
+
+
+
+
Перечислим функции api Win32, имеющие отношение к работе с файловой системой.
+
+
+
+
+
+
+
+
+
+
Получение атрибутов файлов
1) В Win32 получить время создания, время последнего доступа и время последней модификации файла можно с помощью функции GetFileTime.
BOOL GetFileTime(HANDLE hFile,
LPFILETIME lpCreationTime,
LPFILETIME lpLastAccessTime,
LPFILETIME lpLastWriteTime);
Перед вызовом данной функции, необходимо открыть файл, о значениях времени которого необходимо получить информацию. Функции GetFileTime передается дескриптор этого файла и указатели на три экземпляра структуры FILETIME, в которые будут записаны время создания (lpCreationTime), время последнего доступа (lpLastAccessTime) и время последней записи (lpLastWriteTime).
2) Установить время создания, последнего доступа или модификации файлов можно с помощью функции SetFileTime.
BOOL SetFileTime(HANDLE hFile,
const FILETIME *lpCreationTime,
const FILETIME *lpLastAccessTime,
const FILETIME *lpLastWriteTime ):
В качестве входных параметров функция SetFileTime принимает указатели на три экземпляра структуры FILETIME и дескриптор файла. Экземпляры структур уже заполнены необходимыми значениями времени. В случае успешного завершения функция возвращает ненулевое значение в регистре ЕАХ.