C语言写中断,有经验的进来看看

xiaowan79 xiaowan79 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
#include "dos.h"
#include "stdio.h"
#include "conio.h"

void far interrupt ( *old_dpram)();
void far interrupt dpram();

void enable_int()
{
unsigned char temp;
old_dpram =getvect(0x0a); //get old interrupt vector

disable();
temp =inport(0x21) &0xf7; //open IRQ2 interrupt
outport(0x21,temp);
setvect(0x0a,dpram); //point vector to new interrupt program: dpram()
enable();
}

void disalbe_int()
{
unsigned char temp;
disable();
temp =inport(0x21) |0x04; //close IRQ2 interrupt
outport(0x21,temp);
enable();
setvect(0x0a,old_dpram); //restore interrupt vector to old program
}

void far interrupt dpram()
{
unsigned char i;
unsigned char da[10];

temp =inport(0xfe2f);
for(i =0; i<10; i++)
{
da[i] =inportb(0x220);
}
}

void main()
{
enable_int();
}

在编译的时候通不过,停在getvect()这个函数这里,我找不出来是什么原因,有知道的吗?请帮个忙,谢谢!
...全文
评论 8
收藏 已收藏
分享
返回顶部
xiaowan79
C语言 70,040 成员 243,237 内容