На главную
Подписка
Новости










Главная / MS-DOS / MS-DOS. РУКОВОДСТВО РАЗРАБОТЧИКА / Глава 12 / Прерывание 2Eh(46). "Черный ход" для командного процессора Сделать домашней страницей Добавить в избранное Написать писмо

НАЗАД СОДЕРЖАНИЕ ВПЕРЁД

Прерывание 2Eh(46). "Черный ход" для командного процессора

Обычно для обработки команды с помощью командного процессора COMMAND.COM используется функция EXEC (функция 4Вh прерывания "int 21h"). Однако, альтернативный, быстрый и "грубый" метод выполнения той же функции обеспечивает прерывание "int 2Eh". Чтобы выполнить какую-либо команду операционной системы MS-DOS, вначале уплотняется память с целью выделения места для новой программы (как и в случае функции 4Вh прерывания "int 21h" ), затем заносят в регистр DS:SI указатель на строку параметров данной команды и в конце обрабатывается прерывание "int 2Eh". Первый байт в строке параметров данной команды - это длина строки, за ней следует сама строка (например, CHKDSK C:), которая заканчивается символом "возврат каретки" (0Dh).


Этот завершающий символ считается частью длины строки. После того как прерывание "int 2h" обработано, важным моментом является обнуление стека, поскольку в результате прерывания "int 2h" содержимое регистров SS и SP может не сохраниться.


НАЗАД СОДЕРЖАНИЕ ВПЕРЁД

Hosted by uCoz