Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МЕТ_ОРГ_1.doc
Скачиваний:
29
Добавлен:
18.11.2019
Размер:
1.27 Mб
Скачать

Чтение вектора прерывания

Входные параметры:

AH – 35h

AL – номер прерывания

Выходные параметры:

ES:BX – текущий адрес обработчика прерывания

Завершение программы

Данная функция используется для завершения работы текущей программы и передачи управления назад операционной системе.

Входные параметры:

AH – 4Ch

AL – код ошибки (можно оставить нулевым)

Выходные параметры: нет.

Отображение строки текста

Операционная система представляет простейшие возможности по выводу текстовой информации на экран.

Примечание: выводимая строка обязательно должна заканчиваться символом «$».

Входные параметры:

AH – 09h

DS:DX – адрес строки, которую надо вывести

Выходные параметры: нет

Чтение одного символа с клавиатуры

Способ 1. Чтение символа с отображением его на экране.

Входные параметры:

AH – 01h

Выходные параметры:

AL – ASCII-код считанного символа

Способ 2. Чтение символа без отображения его на экране (без эха).

Входные параметры:

AH – 08h

Выходные параметры:

AL – ASCII-код считанного символа

Примечание: коды, возвращаемые данными функциями являются ASCII-кодами, то есть номерами символов в таблице ASCII, а не скан-кодами клавиш.

Создание файла

Входные параметры:

AH – 3Ch

DS:DX – адрес строки, содержащей имя нового файла

CX – атрибуты файла (можно оставить нулем)

Выходные параметры:

Флаг CF будет установлен в случае ошибки.

Функция 3Ch прерывания 21h создает и открывает новый файл методом дескриптора файла. DS:DX должны указывать на строку, дающую путь к файлу и имя файла в стандартном формате MS DOS, включая имя диска. Строка должна завершаться байтом ASCII 0. Байт атрибутов файла помес­тите в CX (0 – для нормального файла). Затем выполните функцию. При успешном выполнении флаг переноса будет равен нулю, а в AX будет возвра­щен номер нового файла. При возникновении ошибки флаг переноса уста­навливается в 1, а в AX содержится код ошибки, который может быть равен 3, если не найден путь, 4 – если уже открыты все буфера для файлов и 5 – если каталог полон или файл уже существует со статусом только для чтения. Отметим, что если в каталоге уже существует файл с таким именем, то суще­ствующий файл обрезается до нулевой длины, и тем самым разрушается.

Пример.

;в сегменте данных

PATH

DB

'С:\LABS\OEVM\EVM-197\LAB.DAT', 0

;проверка наличия файла в каталоге

MOV

AH, 4Eh

;функция поиска в каталоге

LEA

DX, PATH

;DS:DX указывают на путь

INT

21h

;проверка наличия файла

JNC

WARN_USER

;если есть, то сообщаем

;создание файла

MOV

AH, 3Ch

;функция создания файла

MOV

CX, 0

;нормальные атрибуты

INT

21h

;создаем файл

JC

OPEN_ERROR

;уход на обработку ошибки

MOV

HANDLE, AX

;запоминаем номер файла

Открытие файла

Входные параметры:

AH – 3Dh

DS:DX – адрес строки, содержащей имя нового файла

AL – метод доступа (0 – чтение, 1 – запись, 2 – чтение/запись)

Выходные параметры:

Флаг CF будет установлен в случае ошибки.

AX – номер файла, если ошибок не было.