汇编语言(王爽第三版)检测点12

检测点12.1

(1)用debug查看内存,情况如下:

0000:0000  68 10 A7 00 8B 01 70 00-16 00 9D 03 8B 01 70 00

解释:一个表项存放一个中断向量,也就是一个中断处理程序的入口地址,这个入口地址包括段地址和偏移地址,一个表项占两个字,高地址存放段地址,低地址存放偏移地址。

 计算中断服务入口地址的方法是:从内存地址为中断类型码*4和中断类型码*4+2的两个字单元中读取中断处理过程的入口地址设置IP和CS

       0号:00A7:1068
       1号:0070:108B
       2号:039D:0016
       3号:0070:108B
      

       3号:IP读取3*4=12的两个bytes就是12和13两个bytes,CS读取3*4+2=14的两个bytes就是14和15两个bytes。
       则3号中断源对应的中断处理程序入口的地址为: 0070:018b


(2)存储N号中断源对应的中断处理程序入口的偏移地址的内存单元的地址为: 4N

存储N号中断源对应的中断处理程序入口的段地址的内存单元的地址为:   4N+2

 讲解:8086系统在存储器的最低1KB区域(00000H~003FFH)建立一个中断向量表,存放256个中断类型的中断向量。这1024个单元被分成256组,每组包括4个字节单元,存储一个中断向量的段基址和段内偏移地址,高2个字节用於存放段基址,低两个字节用於存放段内偏移地址。

8086系统把中断向量表中的中断明确分为3个部份:
1.专用中断:类型号0~4(所以中断不是从1开始,而是0)
2.系统备用中断:类型号5~31H
3.用户中断:类型号32H~0FFH




posted @ 2017-05-21 09:20  筑基2017  阅读(910)  评论(0编辑  收藏  举报