[所有分类]微机原理07第七章.ppt

  1. 1、本文档共73页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[所有分类]微机原理07第七章

系统的基本I/O——BIOS中断调用,如INT 13H的磁盘I/O调用、INT 10H的屏幕显示调用、INT 16H的键盘输入调用等,为用户提供了直接与I/O设备打交道的功能,而不必了解设备硬件接口的具体细节。DOS功能调用(INT 21H)则使得用户可以方便地实现对磁盘文件的存取管理、内存空间的申请或修改等操作。用户自定义的软件中断则是利用保留的中断类型号来扩充自己需要的中断功能。 对于BIOS功能调用和DOS功能调用这些系统定义的指令中断,在系统引导时就完成了装配,使用者只要遵从调用的格式,预置所需要的入口参数,直接用INT n指令完成调用;而用户自定义的软件中断调用,除了设计好中断服务程序外,还得把中断入口地址预置到中断向量表中,在需要调用时,用INT n指令实现。 8086中上述中断的优先级别由最高到最低的顺序为:内部中断(单步中断除外),非屏蔽中断,可屏蔽中断,单步中断。 7.2.2 中断向量和中断向量表 中断向量是中断服务程序的入口地址。 它包括中断服务程序的段基址CS和偏移地址IP(共占4个字节地址)。因此,通过使用中断向量,可以找到中断服务程序的入口地址,实现程序的转移。 把系统中所有的中断向量集中起来放到存储器的某一区域内,这个存放中断向量的存储区就叫中断向量表或中断服务程序入口地址表。 中断向量表的每一个向量的序号就是中断类型号,共256个中断类型。 中断向量在表中的位置称为中断向量地址 中断向量地址=中断类型号×4 PC系列微机的存储器的0000~03FFH共1024个地址单元作为中断向量存储区,每个中断向量需占用4个字节的地址空间,所以,可容纳256个中断向量,即可处理256个中断服务程序。每个中断向量的2个低字节用于存放相应中断服务程序入口地址的IP值,2个高字节用于存放服务程序的CS。各服务程序的段基址CS和偏移地址IP在中断向量表中按中断号顺序存放。 中断向量并非常驻内存,而是开机上电时,由程序装入内存指定的中断向量表中。系统配置和使用的中断所对应的中断向量由系统软件负责装入。若系统中(如单板机)未配置系统软件,就要由用户自行装入中断向量。 7.2.3 中断向量的装入 用MOV指令写入中断向量。 假设中断向量号为60H,中断服务程序的段基址是SEG_INTR,偏移地址是OFFSET_INTR ┇ CLI ;关中断 CLD ;内存地址递增 MOV AX,0 MOV ES,AX ;给ES赋值为0 MOV DI,60H*4 ;中断向量指针→DI MOV AX,OFFSET_INTR ; 中断服务程序偏移值→AX STOSW ;AX→[DI][DI+1]中,然后DI+2 MOV AX,SEG_INTR ; 中断服务程序的段基址→AX STOSW ;AX→[DI+2][DI+3] STI ; 开中断 ┇ 例7-1 将中断服务程序的入口地址直接写入中断向量表。 ┇ MOV AX,00H MOV ES,AX MOV BX,60H*4 ;中断号×4→BX MOV AX,OFFSET_INTR ;中断服务程序偏移值→AX MOV ES:[BX],AX ;装入偏移地址 MOV AX,SEG_INTR ;中断服务程序的段基址→AX MOV ES:[BX+2],AX ;装入段基址 ┇ 例7-2 1.内部中断响应过程 CPU在执行内部中断时,没有中断响应周期。对于除法溢出、单步、断点和溢出中断,中断类型号是自动形成的,而对于INT n指令,其中断类型号由INT n指令中给的给定的n决定

文档评论(0)

jiupshaieuk12 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档