打那么多字累死我了。给点鼓励,谢谢了!
中断向量放在内存开始的1024个字节之 中 他就是中断的入口地址.1CH 就是(16+12)*4开始的4个内存单元。 所以应该是从70H开始的四个单元。0070H 0071H 0072H 0073H 其实你那个5110H 是CS 2030是 IP CS放高两位,IP放低两位。所以对应0071H~0073H分别放 30H 20H 10H 51H
可屏蔽中断。就是先中断请求。然后CPU处理完当前的任务后 响应中断 响应中断的时候要关中断也就是IF=1 保存断口地址,保存FLAG寄存器。都压入栈。接着就要进入中断子程序,在中断子程序中要开中断。中断子程序结束后,要返回断口地址,也就是弹出栈CS:IP 和FLAG。 接着返回后执行下一条指令
响应之后顶部四个单元应该是先压入CS再压入IP分别对应着顶~下4个单元存放着
IP低2位 IP高2位 CS低2位 CS高2位
INT N是通过中断类型号进行的中断。调用子程序是用的
call 然后返回的时候用ret 中断是int 返回iret 这两个比较相似。
然后就是都需要保存断口地址,以留返回的时候用的哈~
不同点就是
个人认为是FLAG的保存问题。
温馨提示:内容为网友见解,仅供参考