Регистр
|
Операция
|
Дополнительные входные регистры
|
Выходные регистры
|
Функции по работе с клавиатурой
|
1
|
Ожидание набора символа на клавиатуре и последующее изображение его на экране (с проверкой на Ctrl-Break)
|
Не используются
|
AL = символ
|
6
|
Чтение символа с клавиатуры (без проверки на Ctrl-Break)
|
DL = 0FFh
|
AL = очередной символ, если буфер клавиатуры не пуст;
AL = 0, если буфер клавиатуры пуст
|
7
|
Ожидание набора символа на клавиатуре без последующего его изображения (без проверки на Ctrl-Break)
|
Не используются
|
AL = символ
|
8
|
То же, что функция 7, но с проверкой на Ctrl-Break
|
Не используются
|
AL = символ
|
A
|
Чтение клавиатурной строки в буфер
|
DS:DX = Адрес буфера
Первый байт буфера = размер буфера
|
Второй байт буфера = число фактически прочитанных символов
|
B
|
Чтение состояния клавиатуры
|
Не используются
|
AL = 0FFh, если клавиатурная строка пуста,
AL = 0, если она содержит хотя бы один символ
|
C
|
Очистка буфера клавиатуры и вызов функции для работы с клавиатурой
|
AL = номер функции для работы с клавиатурой
|
В соответствии с вызываемой функцией
|
Функции по работе с дисплеем
|
2
|
Изображение символа (с проверкой на Ctrl-Break)
|
DL = символ
|
Не используются
|
5
|
Печать символа
|
DL = символ
|
Не используются
|
6
|
Изображение символа (без проверки на Ctrl-Break)
|
DL = символ
|
Не используются
|
9
|
Изображение строки
|
DS:DX = адрес строки, которая должна заканчиваться символом $
|
Не используются
|
Функции для обмена данными с асинхронным последовательным портом
|
3
|
Ожидание ввода символа через асинхронное последовательное устройство
|
Не используются
|
AL = символ
|
4
|
Вывод символа на асинхронное последовательное устройство
|
DL = символ
|
Не используются
|
Функции управления файлами
|
D
|
Сброс текущего дисковода в начальное состояние
|
Не используются
|
Не используются
|
E
|
Задание нового текущего дисковода
|
DL = номер дисковода (0 = A, 1 = B, 2 = C)
|
AL = число дисководов (2 в случае одного дисковода)
|
2E
|
Задание режима проверки
|
DL = 0
AL = 0 для отключения проверки
AL = 1 для включения проверки
|
Не используются
|
Функции по работе с датами и временем
|
2A
|
Чтение системной даты
|
Не используются
|
CX = год (1980-2099)
DH = месяц (1-12)
DL = день (1-31)
|
2B
|
Установка системной даты
|
CX, DX = дата в том же формате, что и для функции 2A
|
AL = 0, если дата правильная
AL = FF, если дата ошибочная
|
2C
|
Чтение системного времени
|
Не используются
|
CH = часы (0-23)
CL = минуты (0-59)
DH = секунды (0-59)
DL = сотые доли секунды (0-99)
|
2D
|
Установка системного времени
|
CX, DX = время в том же формате, что и для функции 2C
|
AL = 0, если время правильное
AL = FF, если время ошибочное
|
Функции по работе с векторами прерываний
|
25
|
Установка вектора прерывания
|
DS:DX = новое значение вектора
|
Не используются
|
35
|
Чтение вектора прерывания
|
AL = номер (тип) прерывания
|
ES:BX = значение вектора
|
Функции по работе с директориями
|
39
|
Создание директории
(команда MKDIR)
|
DS:DX = адрес ASCIIZ-строки с именем директории
|
Возможен код ошибки 3 или 5
|
3A
|
Удаление директории
(команда RMDIR)
|
DS:DX = адрес ASCIIZ-строки с именем директории
|
Возможен код ошибки 3
|
3B
|
Смена текущей директории
(команда CHDIR)
|
DS:DX = адрес ASCIIZ-строки с именем новой директории
|
|
47
|
Чтение имени текущей директории
|
DL = номер дисковода
(0 = текущий, 1 = А и т.д.)
DS:DI = адрес буфера размером 64 байта
|
DS:SI = адрес ASCIIZ-строки
Возможен код ошибки 15
|
Функции расширенного управления файлами
|
36
|
Получение сведений о свободном месте на диске
|
DL = номер дисковода
(0 = текущий, 1 = А и т.д.)
|
AX = 0FFFFh, если обнаружена ошибка
AX = число секторов в кластере
BX = число свободных кластеров
DX = общее число кластеров
CX = число байтов в секторе
|
3C
|
Создание файла
|
DS:DX = адрес ASCIIZ-строки
CX = атрибут файла
|
AX = логический номер файла
Возможен код ошибки 3, 4 или 5
|
3D
|
Открытие файла
|
DS:DX = адрес ASCIIZ-строки
AL = 0 при открытии для чтения
AL = 1 при открытии для записи
AL = 2 при открытии для чтения и записи
|
AX = логический номер файла
Возможен код ошибки 2, 4, 5 или 12
|
3E
|
Закрытие логического номера файла
|
BX = логический номер файла
|
Возможен код ошибки 6
|
3F
|
Чтение файла или ввод данных с устройства
|
BX = логический номер файла
CX = число считываемых байтов
DS:DX = адрес буфера
|
AX = число фактически считанных байтов
AX = 0 при попытке чтения за концом файла
Возможен код ошибки 5 или 6
|
40
|
Запись в файл или вывод данных на устройство
|
BX = логический номер файла
CX = число записываемых байтов
DS:DX = адрес буфера
|
AX = число фактически записанных байтов
Возможен код ошибки 5 или 6
|
41
|
Удаление файла
|
DS:DX = адрес ASCIIZ-строки
|
Возможен код ошибки 2 или 5
|
43
|
Чтение атрибута файла
|
AL = 0
DS:DX = адрес ASCIIZ-строки с именем файла
|
CX = атрибут
Возможен код ошибки 2 или 5
|
43
|
Установка нового атрибута файла
|
AL = 1
DS:DX = адрес ASCIIZ-строки с именем файла
CX = атрибут
|
Возможен код ошибки 2 или 5
|
54
|
Чтение режима проверки
|
Не используются
|
AL = 0, если проверка выключена
AL = 1, если проверка включена
|
56
|
Переименование файла
|
DS:DX = адрес ASCIIZ-строки со старым именем файла
ES:DI = адрес ASCIIZ-строки с новым именем файла
|
Возможен код ошибки 3, 5 или 17
|