Читать «Создаем вирус и антивирус» онлайн - страница 108
Игорь А. Гульев
Примечания.
Значение, возвращаемое в CX – сегмент, не селектор. Попытки использовать его как селектор приведут к исключению общей защиты памяти.
Вход:
AX=0201h
BL – номер прерывания
CX:DX – сегмент: смещение вектора прерывания реального режимаВыход:
CF=0, если функция выполнена успешно
CF=1, если при выполнении функции возникли ошибкиОписание. Данная функция устанавливает вектор прерывания реального режима.
Примечания. Значение в CX должно быть сегментом, а не селектором.
Вход:
AX=0202h
BL – номер исключения (00h-1Fh)Выход:
CF=0, если функция выполнена успешно
CX:(E)DX – селектор: смещение
CF=1, если при выполнении функции возникли ошибки
Значение, переданное в BL, некорректноОписание. Данная функция возвращает вектор обработчика исключения процессора.
Примечания.
Значение в CX – селектор защищенного режима, а не сегмент реального. В 32-битном режиме значение смещения возвращается в регистре EDX.
Вход:
AX=0203h
BL – номер исключения (00h-1Fh)
CX:(E)DX – селектор: смещениеВыход:
CF=0, если функция выполнена успешно
CF=1, если при выполнении функции возникли ошибки
Значение, переданное в BL, некорректноОписание. Данная функция устанавливает вектор обработчика исключения процессора.
Примечания.
Значение в CX должно быть существующим селектором защищенного режима, а не сегментом реального. В 32-битном режиме значение смещения возвращается в регистре EDX.
Вход:
AX=0204h
BL – номер прерыванияВыход:
CF=0
CX:(E)DX – селектор: смещениеОписание. Данная функция возвращает вектор обработчика прерывания защищенного режима.
Примечания.
Значение в CX – селектор защищенного режима, а не сегмент реального. В 32-битном режиме значение смещения возвращается в регистре EDX.
Вход:
AX=0204h
BL – номер прерывания
CX:(E)DX – селектор: смещениеВыход:
CF=0, если функция выполнена успешно
CF=1, если при выполнении функции возникли ошибкиОписание. Данная функция устанавливает вектор обработчика прерывания защищенного режима.
Примечания.
Значение в CX должно быть существующим селектором защищенного режима, а не сегментом реального. В 32-битном режиме значение смещения возвращается в регистре EDX.
Вход:
AX=0300h
BL – номер прерывания
BH – флаги:
бит 0 – сбросить контроллер прерывания и адресную линию A20
биты 1–7 – зарезервированы и должны быть равны нулю
CX – количество слов, которые надо скопировать из стека защищенного режима в стек реального
ES:(E)DI – селектор: смещение структуры вызова реального режима (Таблица Г-1)
Выход:
CF=0, если функция выполнена успешно
ES:(E)DI – селектор: смещение модифицированной структуры вызова реального режима
CF=1, если при выполнении функции возникли ошибки