INT 20H: завершить программу

Это прерывание используется для выхода из программы и возврата управления родительскому процессу (обычно интерпретатору команд DOS - COMMAND.COM). Оно восстанавливает значения управляющих векторов INT 22H INT 23H INT 24H Оно также сбрасывает все файловые буфера (если длина файла изменилась, то файл должен быть предварительно закрыт).

Важно:

Регистр CS должен содержать значение PSP завершающегося процесса. Если ваш CS не равен PSP, вы можете выдать JMP или RET на PSP:0000.

Рекомендуется использовать функцию 4cH Terminate, чтобы избежать трудностей, связанных с неравенством CS и PSP. Она позволяет также задать код выхода. Программы COM-формата обычно выполняются при CS=PSP, так что им можно выдавать INT 20H в любой момент. EXE-программы могут выдавать FAR JMP или FAR RET, чтобы передать управление на PSP:0000, где содержится инструкция INT 20H.

INT 21H: сервис DOS

Это прерывание служит главным входом большинства функций DOS.

Программа, запрашивающая сервис DOS, должна подготовить всю необходимую информацию в регистрах и управляющих блоках, указать в регистре AH номер желаемой функции DOS и затем вызвать прерывание INT 21H.

  • Функция DOS 00H: завершить программу
  • Функция DOS 01H: ввод с клавиатуры **
  • Функция DOS 02H: вывод на дисплей**
  • Функция DOS 03H: ввод AUX
  • Функция DOS 04H: вывод AUX

$parent="/progr/dos/"

  • Функция DOS 06H: Обмен с консолью*
  • Функция DOS 07H: Нефильтрующий консольный ввод без эха*
  • Функция DOS 08H: Консольный ввод без эха*
  • Функция DOS 09H: Выдать строку***
  • Функция DOS 0aH: буферизованный ввод строки*
  • Функция DOS 0bH: проверить статус ввода*
  • Функция DOS 0cH: ввод с очисткой*
  • Функция DOS 0dH: Сбросить диск*
  • Функция DOS 0eH: Выбрать умалчиваемый диск DOS
  • Функция DOS 0fH: открыть файл через FCB
  • Функция DOS 10H: Закрыть файл через FCB
  • Функция DOS 11H: Найти 1-й совпадающий файл через FCB
  • Функция DOS 12H: Найти следующий совпадающий файл через FCB
  • Функция DOS 13H: Удалить файл через FCB
  • Функция DOS 14H: читать последовательный файл через FCB
  • Функция DOS 15H: писать последовательный файл через FCB
  • Функция DOS 16H: создать файл через FCB
  • Функция DOS 17H: Переименовать файл через FCB
  • Функция DOS 19H: дать умалчиваемый диск DOS
  • Функция DOS 1aH: установить адрес DTA*
  • Функция DOS 1bH: дать информацию FAT (текущий диск)*
  • Функция DOS 1cH: дать информацию FAT (любой диск)*
  • Функция DOS 21H: читать запись произвольного файла
  • Функция DOS 22H: писать запись произвольного файла
  • Функция DOS 23H: дать размер файла через FCB*
  • Функция DOS 24H: установить адрес блока произвольного файла
  • Функция DOS 25H: установить вектор прерывания***
  • Функция DOS 26H: создать префикс программного сегмента
  • Функция DOS 27H: читать блок произвольного файла**
  • Функция DOS 28H: писать блок произвольного файла
  • Функция DOS 29H: Разобрать имя файла
  • Функция DOS 2aH: дать дату DOS*
  • Функция DOS 2bH: установить дату DOS*
  • Функция DOS 2cH: дать время DOS*
  • Функция DOS 2dH: установить время DOS*
  • Функция DOS 2eH: установить/сбросить переключатель верификации
  • Функция DOS 2fH: дать текущий DTA
  • Функция DOS 30H: дать номер версии DOS*
  • Функция DOS 31H: завершиться и остаться резидентным -- KEEP*
  • Функция DOS 32H: дать дисковую информацию DOS (недокументировано)
  • Функция DOS 33H: установить/опросить уровень контроля прерывания DOS*
  • Функция DOS 34H: адрес статуса реентерабельности DOS
  • Функция DOS 35H: дать вектор прерывания***
  • Функция DOS 36H: дать свободную память диска*
  • Функция DOS 37H: установить/опросить символ-переключатель (недокументировано)
  • Функция DOS 38H: дать/установить информацию страны
  • Функция DOS 39H: создать новое оглавление -- MKDIR
  • Функция DOS 3aH: Удалить оглавление -- RMDIR
  • Функция DOS 3bH: установить умалчиваемое оглавление DOS -- CHDIR
  • Функция DOS 3cH: создать описатель файла
  • Функция DOS 3dH: открыть описатель файла
  • Функция DOS 3eH: Закрыть описатель файла
  • Функция DOS 3fH: читать файл через описатель
  • Функция DOS 40H: писать в файл через описатель
  • Функция DOS 41H: Удалить файл*
  • Функция DOS 42H: установить указатель файла -- LSEEK
  • Функция Функция DOS 43H: установить/опросить атрибут файла -- CHMOD*
  • Функция DOS 44H: управление вводом-выводом устройства -- IOCTL
  • Функция DOS 45H: Дублировать описатель файла -- DUP
  • Функция DOS 46H: переназначить описатель -- FORCDUP
  • Функция DOS 47H: дать умалчиваемое оглавление DOS
  • Функция DOS 48H: распределить память (дать размер памяти)
  • Функция DOS 49H: Освободить блок распределенной памяти***
  • Функция DOS 4aH: Сжать или расширить блок памяти
  • Функция DOS 4bH: выполнить или загрузить программу -- EXEC
  • Функция DOS 4cH: завершить программу -- EXIT
  • Функция DOS 4dH: дать код выхода программы -- WAIT
  • Функция DOS 4eH: Найти 1-й совпадающий файл
  • Функция DOS 4fH: Найти следующий совпадающий файл
  • Функция DOS 54H: дать переключатель верификации DOS
  • Функция DOS 56H: Переименовать/переместить файл*
  • Функция DOS 57H: установить/опросить время/дату файла*
  • Функция DOS 59H: дать расширенную информацию об ошибке
  • Функция DOS 5aH: создать уникальный временный файл
  • Функция DOS 5bH: создать новый файл*
  • Функция DOS 5cH: блокировать/разблокировать доступ к файлу
  • Функция DOS 5eH: различные сетевые функции
  • Функция DOS 5fH: переназначение устройств в сети
  • Функция DOS 62H: дать адрес префикса программного сегмента**


Наши рекомендации