1 中断向量表的结构
第一个带有异常处理的系统:UNIVAC,1951年
- 每秒10万次加法,主频2.25MHz
- 算术运算溢出时:转向地址0执行两条修复指令,或者停机
- 1955年,UNIVAC 1103增加了外部中断,用于风洞数据的实时收集
1.1 Intel 8086(1978年)
主要特点:
- 对外有16根数据线,内部有4个16位通用寄存器,既能处理16位数据,也能处理8位数据
- 对外有20根地址线,可寻址的内存空间为1MB
- 物理地址的形成采用“段加偏移”的方式
- 存储器中保留两个专用区域:中断向量表区(00000H-003FFH)、初始化程序区(FFFF0H-FFFFFH)
1.2 中断向量和中断服务程序
中断向量:中断服务程序的入口地址
每个中断类型对应一个中断向量(4字节)
- 前两个字节单元存放中断服务程序入口地址的偏移量(IP),低字节在前,高字节在后
- 后两个字节单元存放中断服务程序入口地址的段基值(CS),低字节在前,高字节在后
1.3 中断向量表的发展
8086的中断向量表:
- 供用户定义的中断:224个
- 保留的中断:27个
- 专用的中断:5个(除法错,单步,非屏蔽,断点,溢出)
80386-Core2的中断向量表(专用的中断,19个):
类型号 | 说明 | 类型号 |
---|