Курсач2 / 12_Приложение А
.doc
Изм
Лист № документ Подп. Дата
ТПЖА.230201.095 ПЗ
Лист
Приложение В
(обязательное)
Листинг программных модулей
#include<stdio.h>
#include<dos.h>
#include<conio.h>
void interrupt (far *old_vector)(void);
void interrupt IsaHandler(void);
#define ISA_MOD 9
int Val=0;
//процедура инициализации и управления
void InitDevice()
{
_disable(); //блокировка системы прерываний
old_vector = get_vect(ISA_MOD); //получение старого вектора
//прерывания
setvect(ISA_MOD, IsaHandler) //подмена своим
asm {
mov dx,310h; //запись в регистр номера порта
mov ah, XXXXXXXXb; //запись в регистр ax байта содержащего
//цифры, которые требуется отобразить
out ah,dh; //вывод значения в порт 310h
}
_enable(); //разблокирование системы прерываний
}
//обработчик прерывания
void interrupt IsaHandler(void)
{
count ++; // увеличить счетчик
old_vector(); // вызвать старый вектор
}