电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

汇编语言课件第14章中断

33页
  • 卖家[上传人]:我***
  • 文档编号:137515200
  • 上传时间:2020-07-08
  • 文档格式:PPT
  • 文档大小:593KB
  • / 33 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、2020年7月8日,1,2020年7月8日,1,2020年7月8日,1,2020年7月8日,1,2020年7月8日,1,2020年7月8日,1,第14章 x86PC的中断系统,*,1,DEC HEX BIN14 0E 00001110,汇编语言与接口技术,2020年7月8日,2,第14章 x86PC的中断系统,学习本章后: 1、明确中断的概念 2、会处理中断 3、会管理和应用中断服务程序 4、会编写中断应用程序,2020年7月8日,3,第14章 x86PC的中断系统,本章的主要内容: 14.1 8088/86中断 14.1.1 中断源 14.1.2 中断服务程序 14.2 x86PC及中断分配 14.3 中断应用程序,14.1 8088/86中断,中断概述 中断:产生了一种外部事件,通知CPU有设备需要服务。 计算机在执行正常程序的过程中,当出现异常事件或事先安排好的事件,迫使CPU暂时中止现行程序的执行,转去执行另一处理程序。当处理完后,CPU再返回到被暂时中止的程序,接着执行被暂时中止的程序。此过程称为中断 。 类型:8088/86中共有256中类型的中断:INT0,INT1,,I

      2、NTFF。 0,1,FF,为中断向量号或者中断类型码。 保护:处理中断前保护有关寄存器到固定的内存单元:FR,IP,CS 中断服务程序入口: (中断向量号*4)IP (中断向量号*4+2)CS,2020年7月8日,5,14.1 8088/86中断,例如: 中断向量表(右表) INT 0:0号中断除法错 INT 1:1号中断单步 INT 2:2号中断NMI,14.1 8088/86中断,14.1.1 中断源 中断源:引起中断的事件。 例如:外设输入/输出请求,计算机异常事故或其他内部原因。,14.1 8088/86中断,14.1.1 中断源(续) 中断分类 按照引起中断的方式,中断可分为: 硬件中断(或外中断):外设控制器或协处理器引起的中断 软件中断或内中断:程序中的中断指令INT或CPU错误结果产生的中断,14.1.1 中断源(续) 硬件中断由外部硬件产生,也称外部中断 硬件中断分两类: 非屏蔽中断(NMI:Non Maskable Interrupt) 通过8086/8088的NMI脚引入,它不受中断允许标志IF的屏蔽;中断类型号=2 可屏蔽中断( Maskable Interru

      3、pt) 可屏蔽中断通过CPU的INTR脚引入,只有当标志寄存器的中断屏蔽标志IF为1时,才能引起中断 开中断指令: STI ,设置中断允许位(IF=1) 关中断指令: CLI ,清除中断允许位(IF=0),14.1 8088/86中断,14.1.1 中断源(续) 中断数目的扩展: 8259可编程中断控制器 x86用于中断的引脚INTR,INTA;Intel提供了8259可编程中断控制器芯片,使得扩展中断数目的工作变得很容易。,14.1 8088/86中断,2020年7月8日,10,14.1 8088/86中断,不受中断标志位IF屏蔽: 1)非屏蔽中断(NMI):电源错、内存和总线奇偶等异常,中断类型号=2 2)程序中INT指令、运算结果异常等 受中断标志位IF屏蔽: 可屏蔽的外部设备中断请求(INTR),8259A中断级联 一片8259A管理8级中断,当申请中断的外设多于8级时可以将8259A级联使用,第一级为8259A主片,第二级为8259A从片,主片可接18片8259A从片,这样最多可管理64级中断源。 8259A中与中断相关寄存器 中断屏蔽寄存器(IMR) 中断命令寄存器,14.

      4、1 8088/86中断,8259A的中断屏蔽寄存器(IMR) IMR的I/O端口地址 21H 8位对应8个外部设备,允许/禁止某设备产生中断 =0时,允许产生中断 =1时,禁止产生中断 例:只允许键盘中断,设置中断屏蔽字 MOV AL, 11111101B OUT 21H, AL 例:新增设允许键盘中断,设置中断屏蔽字 IN AL, 21H AND AL, 11111101B OUT 21H, AL CPU可以响应某设备的中断服务请求的条件 中断屏蔽寄存器中对应位=0,同时IF=1,中断命令寄存器 I/O端口地址 20H 8位含义 L2-l0: 指定IR0-IR7中哪个中断优先级最低 R(rotate), SL(set level)控制IR0-IR7中断优先顺序 EOI:中断结束,当EOI=1时,将当前中断请求被清除 中断服务程序中,中断处理结束前,应将EOI置1 结束硬件中断指令 IN AL, 20H OR AL, 20H OUT 20H, AL,软件中断,软件中断,软件中断也称内部中断,由3种情况引起 程序中的中断指令 INT n 操作数n指出中断类型号,0FFH 如 INT 12

      5、H ;存储器容量测试 CPU的某些运行结果 除法错中断:除数为零/商超出表数范围,中断类型号为0的内部中断 溢出中断:运算结果溢出,OF=1,INTO指令将引起类型为4的内部中断 调试程序(DEBUG)设置的中断 单步中断:标志位TF=1时,中断类型号=1 断点中断:将程序分段,每段设置一个断点(INT 3),中断类型号=3 软件中断不受中断屏蔽标志IF影响,14.1 8088/86中断,14.1.2 中断服务程序 每个中断都有一个相关的程序。发生中断时,要执行该程序完成特定的任务,这个程序称为中断服务程序。 中断发生时,CPU自动执行中断服务程序。 如何找到中断服务程序?,14.1.2 中断服务程序,x86有256种类型的中断 每种中断有一个中断类型号,类型号 0-FFH 每种类型中断都由相应的中断处理程序处理 中断向量表 各类型中断处理程序的入口地址表 在存储器中, 1KB(00000H-003FFH) 每类型中断向量占4字节,对应中断处理程序入口CS、IP值 每类中断向量表地址=4中断类型号n,中断向量表,2020年7月8日,18,第14章 x86PC的中断系统,14.1 808

      6、8/86中断 14.1.1 中断源 14.1.2 中断服务程序 14.2 x86PC及中断分配 14.3 中断应用程序,2020年7月8日,18,14.2 x86PC及其中断分配,在x86的256种可能的中断中,有些用于PC外设硬件BIOS,有些被操作系统使用,剩下的由软件编程人员使用。,2020年7月8日,20,14.2 x86PC及其中断分配,中断向量地址表 -表示法1-2,中断向量地址一览表,这些功能可以用中断方式调用,INT n,存取中断向量的DOS功能调用(21H) 设置中断向量 预置:AH=25H AL=中断类型号 DS:DX=中断向量(中断程序入口地址) 执行:INT 21H 取中断向量 预置:AH=35H AL=中断类型号 执行:INT 21H 返回:ES:BX=中断向量(中断程序入口地址),*如何读取/改变中断向量表中的中断程序入口地址(中断向量),例8.4 使用DOS功能调用存取中断向量 MOVAL,N MOVAH,35H INT21H PUSHES PUSHBX PUSHDS MOVAX,SEG INTHAND MOVDS,AX MOVDX,OFFSET INTH

      7、AND MOVAL,N MOVAH,25H INT21H POPDS POPDX POPDS MOVAL,N MOVAH,25H INT21H RET,用户自定义中断程序 INHAND: IRET,保存 原中断向量,设置 新中断向量,恢复 原中断向量,取中断向量 预置:AH=35H AL=中断类型号 执行:INT 21H 返回:ES:BX=中断向量 设置中断向量 预置:AH=25H AL=中断类型号 DS:DX=中断向量 执行:INT 21H,2020年7月8日,25,第14章 x86PC的中断系统,14.1 8088/86中断 14.1.1 中断源 14.1.2 中断服务程序 14.2 x86PC及中断分配 14.3 中断应用程序,2020年7月8日,25,14.3 中断应用程序,本节通过举例说明中断应用程序的编写方法。 例子1.用户自定中断程序设计方法 例子2.利用系统提供的中断的中断程序设计方法,14.3 中断应用程序,例1.用户自定义中断完成AL中的数据显示,中断类型号78H(保留) ;主程序中设置中断向量 MOVAX,seg int78 MOVDS,AX MOVDX,offs

      8、et int78 MOVAH,25H MOV AL,78H INT 21H ;中断处理程序 int78: ;中断服务功能处理 ;显示AL中的高四位 ;显示AL中的低四位 IRET 参看INTEXP.ASM,14.3 中断应用程序,例2 要求每10秒响铃一次,并显示“The bell is ring!” 要点:如何设计中断处理程序;如何进入中断处理程序,可用资源:系统定时器(中断类型8,每秒中断18.2次) 系统定时器的中断处理程序中,有一条指令INT 1CH,但嵌套调用后BIOS中只有IRET指令。用户可实现完成某些周期性工作,但影响系统时钟,设计中断处理程序 系统定时器中断10* 18.2=182=B6H次,响铃一次,并显示“The bell is ring!” 系统定时器中断中读时钟,如果到10秒,响铃一次,并显示“The bell is ring!” 如何进入中断处理程序 改变INT 1CH的中断向量,使系统定时器中的嵌套中断指向我们设计的中断处理程序 将我们设计的中断处理程序放在INT 1CH嵌套调用的BIOS处替换掉IRET指令。 BIOS是固件,不可行 在INT 1CH嵌套

      9、调用的BIOS中将IRET指令替换为跳转指令,指向我们设计的中断处理程序。要修改编译内核,中断类型1CH作为用户使用的中断类型,可能已被其他功能的程序使用,所以在编写新的临时中断程序时,应做如下工作: 1、在主程序的初始化部分,先保存当前1CH的中断向量,再设置新的中断向量。 2、在主程序结束部分恢复保存的1CH中断向量。,003FFH,除法错,单步,NMI,BIOS,INTn,1ch 4 = 70h,设置中断向量 预置:AH=25H AL=中断类型号 DS:DX=中断向量(中断程序入口地址) 执行:INT 21H 取中断向量 预置:AH=35H AL=中断类型号 执行:INT 21H 返回:ES:BX=中断向量(中断程序入口地址),;* ;eg8-5.asm. ;* .model samll ;- .stack ;- .code ; main program mainprocfar start:moveax, data movds, ax ;save old interrupt vector moval, 1ch movah, 35h int21h pushes pushbx ;set new interrupt vector pushds movdx, offset ring movax, seg ring movds, ax moval, 1ch movah, 25h int21h popds,in al, 21h andal, 11111110b out21h, al sti movdi, 20000 deplay:movsi, 30000 deplay1:decsi jnzdeplay1 decdi jnzdeplay ;restore old interrupt vector

      《汇编语言课件第14章中断》由会员我***分享,可在线阅读,更多相关《汇编语言课件第14章中断》请在金锄头文库上搜索。

      点击阅读更多内容
    TA的资源
  • 2020届中考英语备考复习-作文课件

    2020届中考英语备考复习-作文课件

  • 2019年中考英语复习-专题十五-交际运用(试卷部分)课件

    2019年中考英语复习-专题十五-交际运用(试卷部分)课件

  • 2019届二轮复习-高中英语-情态动词和虚拟语气课件

    2019届二轮复习-高中英语-情态动词和虚拟语气课件

  • 2019届一轮复习苏教版物质的跨膜运输课件

    2019届一轮复习苏教版物质的跨膜运输课件

  • 2019年北师大版英语单元复习课件::Unit17Laughter课件北师大版选修6

    2019年北师大版英语单元复习课件::Unit17Laughter课件北师大版选修6

  • 2021届新中考物理冲刺备考复习-力-弹力-重力课件

    2021届新中考物理冲刺备考复习-力-弹力-重力课件

  • 2019届一轮复习人教版种群的特征和数量变化课件

    2019届一轮复习人教版种群的特征和数量变化课件

  • 2020年高考地理一轮复习--等高线地形图-课件

    2020年高考地理一轮复习--等高线地形图-课件

  • 2019版高考英语一轮复习-Unit-1-Living-well课件

    2019版高考英语一轮复习-Unit-1-Living-well课件

  • 2019届一轮复习人教版孟德尔的遗传定律——基因分离定律课件

    2019届一轮复习人教版孟德尔的遗传定律——基因分离定律课件

  • 2019届高三第二轮复习专题二万有引力定律及其应用课件

    2019届高三第二轮复习专题二万有引力定律及其应用课件

  • 2020最新部编版语文五年级上册23-鸟的天堂课件含课后练习

    2020最新部编版语文五年级上册23-鸟的天堂课件含课后练习

  • 2020版高考(浙江)一轮复习:第7讲-细胞呼吸课件

    2020版高考(浙江)一轮复习:第7讲-细胞呼吸课件

  • 2020年新教材高中英语UNIT4HISTORYANDTRADITIONSSectionⅢDiscoveringUsefulStructures课件必修第二册

    2020年新教材高中英语UNIT4HISTORYANDTRADITIONSSectionⅢDiscoveringUsefulStructures课件必修第二册

  • 2019届高考历史二轮复习阶段三专题十三罗斯福新政与当代资本主义的新变化课件2

    2019届高考历史二轮复习阶段三专题十三罗斯福新政与当代资本主义的新变化课件2

  • 2019版高考生物二轮复习-专题三-细胞的生命历程-考点9-细胞分裂过程图像和坐标曲线的识别课件

    2019版高考生物二轮复习-专题三-细胞的生命历程-考点9-细胞分裂过程图像和坐标曲线的识别课件

  • (通史版)2021版高考历史一轮复习第4部分高考讲座(三)2高考非选择题(12分开放探究题)规范答题讲练课件

    (通史版)2021版高考历史一轮复习第4部分高考讲座(三)2高考非选择题(12分开放探究题)规范答题讲练课件

  • 2019届高三地理复习第五讲--《区际联系与区域协调发展》课件

    2019届高三地理复习第五讲--《区际联系与区域协调发展》课件

  • 2021人教部编版历史九年级上册习题课件:第18课美国的独立

    2021人教部编版历史九年级上册习题课件:第18课美国的独立

  • 2020学年新教材高中英语Unit1FoodforthoughtPeriodTwoStartingout课件

    2020学年新教材高中英语Unit1FoodforthoughtPeriodTwoStartingout课件

  • 点击查看更多
    最新标签
    发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2 2022年小学体育教师学期工作总结 2022年家长会心得体会集合15篇
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.