《汇编语言程序设计》第9章市公开课一等奖百校联赛获奖课件.pptx
《《汇编语言程序设计》第9章市公开课一等奖百校联赛获奖课件.pptx》由会员分享,可在线阅读,更多相关《《汇编语言程序设计》第9章市公开课一等奖百校联赛获奖课件.pptx(21页珍藏版)》请在咨信网上搜索。
1、汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 第第9 9章章输入输入/输出程序设计输出程序设计 输入/输出指令 输入输出控制方式 中止BIOS中止调用 第1页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 9.1 输入/输出指令 9.1.1 IO端口寻址 当设备经过接口与主机相连时,CPU能够经过接口地址来访问I/O设备。通常将I/O设备码视为地址码,对I/O地址码编址可采取存放器编址和I/O端口编址两种方式。1存放器编址方法 存放器编址也叫统一编址,就是将I/O地址看作是存放器地址一部分。2I/O端口编址方法 I/O端口编址也称为不统一编址,就是指I/O地址和存放器地址
2、是分开,全部对I/O访问必须有专用I/O指令。第2页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 9.1.2 9.1.2 输入输入/输出指令输出指令 1 1输入指令输入指令 格式:格式:IN OPERAND1IN OPERAND1,OPERAND2OPERAND2 其中:操作数其中:操作数OPERAND1OPERAND1是是ALAL或或AXAX,操作数操作数OPERAND2OPERAND2是输入端口地址。是输入端口地址。输入指令输入指令ININ是把端口一个字节或字传送给是把端口一个字节或字传送给ALAL或或AXAX。2 2输出指令输出指令 格式:格式:OUT OPERAND1OUT
3、 OPERAND1,OPERAND2OPERAND2 其其中中:OPERAND1OPERAND1是是输输出出端端口口地地址址,OPERAND2OPERAND2是是ALAL或或AXAX,输输出出指指令令OUTOUT把把ALAL或或AXAX中内容输出到端口。中内容输出到端口。3.3.端口地址寻址方式端口地址寻址方式 用上两条指令时,有直接和间接两种寻址方式来确定端口地址。用上两条指令时,有直接和间接两种寻址方式来确定端口地址。(1)(1)直接端口寻址直接端口寻址 输输入入/输输出出指指令令端端口口地地址址能能够够是是直直接接给给出出,此此时时指指令令为为双双字字节节,第第二字节即为一个详细二字节即
4、为一个详细8 8位二进制数,可对位二进制数,可对0-2550-255个个8 8位端口寻。位端口寻。(2)(2)间接端口寻址间接端口寻址 间间接接端端口口寻寻址址是是采采取取存存放放器器DXDX内内容容来来指指定定端端口口地地址址,此此寻寻址址方方式式指指令令是是单单字字节节指指令令。因因为为DXDX是是1616位位存存放放器器,所所以以这这种种寻寻址址方方式式可可对对0-0-6553565535个个1616位位端端口口进进行行寻寻址址。当当端端口口号号大大于于255255时时,就就应应采采取取间间接接端端口口寻寻址。址。返回返回第3页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程9.
5、2 9.2 输入输出控制方式输入输出控制方式 9.2.1 9.2.1 程序控制方式程序控制方式 程序控制方式是在用户程序控制下实现主机(CPU)与外设交换信息,对哪个端口何时进行输入/输出操作,都在程序中反应出来。详细实现时又有马上传送和程序查询两种方法。1 1马上传送方马上传送方式 采取这种方法时,应该确定外设已经准备好,所以不再问询外设是否准备情况,在程序中需要输入/输出时,就向指定端口进行输入输出操作。2程序查询方式 若CPU与外设交换信息时,依据外设工作状态来决定是否进行交换,这就是程序查询方法,这时CPU经常要查询外设一些标识,然后再作出决定,就是程序查询方式。第4页汇编语言汇编语言
6、淮南师范学院重点课程淮南师范学院重点课程 9.2.2 中止控制方式 程序控制方式马上传送方法,不能依据设备实时情况操作,而程序查询方式使这种问题得以处理,但工作时CPU与外设相当串联工作,占用CPU大量时间,所以工作效率不可恭维。假如在外设已准备好情况下,通知CPU,这时CPU才停下原来工作与外设实施数据交换,此次信息交换完成后CPU在继续自己原有工作,按此想法就产生了中止工作方式。CPU开启外设后仍继续执行原程序,在第K条指令执行结束后,CPU响应了外设请求,中止了现行程序,转至中止服务程序,等处理完后又返回到原程序断点处,继续从第K+1条指令往下执行。这种方式中止了原程序运行,所以称为程序
7、中止方式。第5页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程9.2.3直接存放器存取方式 假如外设能直接与主存交换信息而不占用CPU,CPU资源利用率显然 又 可 深 入 提 升,这 就 出 现 了 直 接 存 放 器 存 取DMA(DirectMemoryAccess)方式。DMA数据块传送操作能够分为3个主要步骤:(1)预处理阶段:由CPU执行几条输入输出指令,测试设备状态;向DMA控制器设备地址存放器中送入设备号,并开启设备;向内存地址计数器送入起始地址;向字计数器中送入交换数据字个数。(2)正式传送阶段:外设准备好发送数据(输入)或接收数据(输出)时,发出DMA请求,由DM
8、A控制器向CPU发出总线使用权请求;CPU在本机器周期执行完成后响应该请求并使CPU总线驱动器处于高阻状态,然后与系统总线相脱离,DMA控制器接管数据总线和地址总线控制,并向内存提供地址;在内存与外围设备之间进行数据交换,每交换一个字则地址计数器和字计数器减1,当计数值到0时,DMA操作结束并向CPU提出中止申请。(3)DMA后处理工作:一旦DMA中止请求得到响应,CPU将停顿主程序执行,转去执行中止服务程序进行DMA操作后处理。包含校验送入内存数据是否正确;决定使用DMA方式传送数据还是结束传送;测试传送过程中是否发生错误。返回返回第6页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课
9、程 9.3 9.3 中止中止 9.3.1 9.3.1 中止概念中止概念 1 1中止概念中止概念计算机在执行程序过程中,在出现异常情况或特殊请求时,计算计算机在执行程序过程中,在出现异常情况或特殊请求时,计算机停顿现行运行程序,转向对这些异常情况或特殊请求处理,处理结机停顿现行运行程序,转向对这些异常情况或特殊请求处理,处理结束后再返回到现行程序间断处,称之为计算机上束后再返回到现行程序间断处,称之为计算机上“中止中止”。2 2中止应用场所中止应用场所(1)及时处理计算机中紧急事件及时处理计算机中紧急事件突突发发故故障障在在用用户户程程序序中中是是无无法法反反应应,但但它它出出现现可可造造成成运
10、运行行结结果果犯犯错错,甚至出现意想不到后果,为了及时处理这些故障,应该采取中止方式。甚至出现意想不到后果,为了及时处理这些故障,应该采取中止方式。(2)协调主机与外设工作速度协调主机与外设工作速度 大大部部分分外外设设工工作作速速度度均均低低于于CPUCPU,采采取取程程序序查查询询方方式式,会会占占用用了了CPUCPU宝贵时间。采取中止控制方式,能够很好处理这一问题。宝贵时间。采取中止控制方式,能够很好处理这一问题。(3)实时控制实时控制第7页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程9.3.2 9.3.2 中止源、中止类型码和中止优先级中止源、中止类型码和中止优先级 1 1
11、中止源中止源 引发中止原因或起源称为中止源(Interrupt source)。(1)外部中止 不是因为CPU内部原因产生中止,称为外部中止。而外部中止又分为非屏蔽中止NMI和可屏蔽中止INTR两种。(2)内部中止 由CPU内部产生中止,称为内部中止。按引发情况可分为3类。比如除法运算犯错、执行软中止指令、单步中止等。2 2中止类型码中止类型码 PC机为每一个中止源分配一个号码,称为中止类型码。这些中止类型码在PC机中是唯一,有是系统统一要求,有是由用户指定中止类型码。第8页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 3 3中止优先级中止优先级 在某时如只有一个中止源提出中止请求
12、,在某时如只有一个中止源提出中止请求,若它是非屏蔽中止源,那么若它是非屏蔽中止源,那么CPUCPU就会马上响应就会马上响应它请求;若它是可屏蔽中止源,只要它请求;若它是可屏蔽中止源,只要IF=1IF=1,CPUCPU也会马上响应它请求。不过,假如在同一也会马上响应它请求。不过,假如在同一时刻有几个中止源同时提出中止请求,时刻有几个中止源同时提出中止请求,CPUCPU只只能先响应能先响应1 1个中止源,假如个中止源,假如CPUCPU响应了一个中止响应了一个中止源中止请求后,在执行中止处理程序时候,又源中止请求后,在执行中止处理程序时候,又有一个中止源提出中止请求,有一个中止源提出中止请求,CPU
13、CPU能否响应这能否响应这个新中止请求,这就引出了中止优先级问题。个新中止请求,这就引出了中止优先级问题。第9页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程 9.3.3 9.3.3 中止矢量表中止矢量表 不不一一样样中中止止来来自自不不一一样样中中止止源源,所所以以有有着着不不一一样样处处理理任任务务,PCPC机机有有256256个个不不一一样样中中止止,对对每每一一个个中中止止源源都都要要设设计计一一个个中中止止处处理理程程序序,而而且且每每一一个个中中止止程程序序都都有有自自己己入入口口地地址址,将将256256个个中中止止程程序序入入口口地地址址放放到到一一起起,就就形形成成
14、了了一一个个表表,称称之之为为中中止止矢矢量量表表。PCPC机机中中止止矢矢量量表表是是在在在在内内存存最最小小地地址址1 1k k字字节节(绝绝对对地地址址为为:0000000000H003FFHH003FFH)空空间间建建立立,由由此此表表确确定定了了中中止止类类型型码码与与该该中中止止源源所所对对应应中中止止处处理理程程序序之之间间一一一一对对应应联联络络。图图9.129.12给给出出中中止止矢矢量量表表安安排排,表表内内存存放放有有256256个个中中止止处处理理程程序序入入口口地地址址。每每个个入入口口地地址址由由4 4个个字字节节组组成成,两两个个低低字字节节存存放放入入口口地地址
15、址偏偏移移量量,两两个个高高字字节节存存放放它它段段基基值值。中中止止响响应应以以后后,表表中中对对应应4 4个个字字节节内内容容分分别别被被送送人人IPIP和和CSCS,完完成成程程序序转转移移。表表中中中中止止类类型型0 0、类类型型1 1、类类型型2 2等等表表示示这这个个入入口口地地址址对对应应中中止止类类型型码码。假假如如已已知知现现在在响响应应中中止止中中止止类类型型码码,就就能能够够从从中中止止矢矢量量表表中中找找到到该该中中止止源源处处理理程程序序入入口口地地址址。设设中中止止类类型型码码为为N N,则有:则有:中止矢量地址中止矢量地址=中止类型号中止类型号*N N 也就是(也
16、就是(4*4*N N,4*N4*N十十1 1)IPIP;(4*N+2(4*N+2,4*N4*N十十3)3)CSCS 这这么么就就把把中中止止处处理理程程序序入入口口地地址址偏偏移移量量和和段段基基值值分分别别送送人人IPIP和和CSCS,然后到此地址执行该中止服务子程序。然后到此地址执行该中止服务子程序。第10页汇编语言汇编语言淮南师范学院重点课程淮南师范学院重点课程9.3.4 9.3.4 中止过程中止过程 一个完整中止过程,要先后经历中止请求、中止响应、中止处理及中止返回等4步骤。1 1中止请求中止请求 这是引发中止第1步。中止源产生中止请求条件,对不一样中止源是不一样。2 2中止响应中止响
17、应 CPU在每执行一条指令后期,都要查询是否有中止请求。若有,就按照优先次序给予响应或不响应。查询中止请求按优先级从高到低次序进行。假如CPU响应,就识别并读出得到响应中止源类型码。3中止处理 因为每个中止处理任务不一样,所以详细中止处理不可能一样,不过也存在一些共性。,简单说中止处理普通可由四个部分组成,即:现场保护、详细中止处理、现场恢复以及中止返回指令。4中止返回 每一个中止处理子程序最终要使用中止返回指令IRET以退出中止,返回原断点处。该指令是无操作数指令,其功效是:首先从堆栈中弹出中止断点地址,分别送人IP和CS,然后恢复标志存放器内容。第11页汇编语言汇编语言淮南师范学院重点课程
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汇编语言程序设计 汇编语言 程序设计 公开 一等奖 联赛 获奖 课件
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【a199****6536】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【a199****6536】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。