Функция Получает содержимое вектора прерывания.
Синтаксис #include
void interrupt(*getvect(int intr_num))();
Файл, содержащий dos.h
прототип
Описание Любой из семейства процессоров 8086 содержит набор
векторов прерываний, пронумерованных от 0 до 255.
4-х байтовое значение каждого вектора есть адрес,
по которому расположена функция обработки преры-
вания.
Функция getvect считывает значение вектора с име-
нем intr_num и интерпретирует прочитанное значе-
ние, как "дальний" указатель (с атрибутом "far")
на некоторую функцию прерывания. Параметр
intr_num должен иметь значение от 0 до 255.
Возвращаемое Функция getvect возвращает 4-х байтовое значение,
значение хранящееся в векторе прерывания с номером
intr_num.
Переносимость Функция уникальна для DOS.
Смотрите также disableenablegeninterruptsetvect
Пример
#include
#include
void interrupt get_out(); /* прототип ф-ции обработки прерывания */
void interrupt (*oldfunc)(); /* указатель на прерывание */
int looping = 1;
int main(void)
{
puts("Нажмите для завершения");
/* сохранить старый вектор */
oldfunc = getvect(5);
/* установить новый вектор */
setvect(5,get_out)
/* ничего не делать */
while(looping);
/* восстановить старый вектор */
setvect(5,oldfunc);
puts("Успешно");
return 0;
}
void interrupt get_out()
{
looping = 0; /* изменить значение глобальной переменной */
}