- 1、本文档共20页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
12_输入输出与中断
80x86汇编语言程序设计 第12章 输入/输出与中断 讲授要点 12.2 中断指令 12.4 CPU与外设间的数据传送 12.5 中断系统概述 12.6 8086/8088的中断系统 12.8 中断服务程序设计 12.9 DOS功能调用与BIOS调用 * * 输入输出、中断等相关指令及CPU与外设间的数据传送 8086中断系统。 中断服务程序设计的基本方法。 DOS与BIOS服务的用途。 12.1 输入输出指令 1. IN 输入:IN acc , port 操作:将指定端口的内容传送到累加器AX或AL中 对标志位的影响:不影响标志 说明: port为端口地址。小于255时,可用直接寻址或间接寻址;大于255,必须用间接寻址。用于间接寻址的寄存器是DX。 acc必须是累加器。外设是8位端口时,用AL寄存器;外设为16为端口时,用AX寄存器。 例:IN AL,B_PORT IN AX,W_PORT IN AL,DX IN AX,DX 2. OUT输入:OUT port , acc 操作:将累加器AX或AL中的内容传送到指定端口 对标志位的影响:不影响标志 说明:同IN指令 例:OUT B_PORT,AL OUT W_PORT,AX OUT DX , AL OUT DX,AX 使CPU产生中断,去执行一个中断服务程序。 1. 软件中断指令 (1)INT i_type 操作:(1)标志寄存器F进栈。 (2)置IF = 0,TF = 0。 (3)CS:IP(即下一条指令地址)进栈。 (4)根据中断类型i_type,以i_type×4为索引,查中 断向量表,将相应地址处的双字送CS:IP。 对标志位的影响:IF = TF = 0,不影响其它标志。 说明:i_type是中断类型,为立即数,范围0~255 (2)INTO i_type 操作:如果OF=1,则产生一个中断类型为4的软件中断: (1)标志寄存器F进栈。 (2)置IF = 0,TF = 0。 (3)CS:IP(即下一条指令地址)进栈。 (4)CS←4×4+2,4×4+3;IP←4×4,4×4+1 对标志位的影响:IF = TF = 0,不影响其它标志。 说明:INTO指令一般用在算术运算指令后面 2. 中断返回指令:IRET 操作:从堆栈弹出一个双字到CS:IP,再弹出一个字到F 对标志位的影响:由栈中弹出值确定。 说明:IRET指令是任何中断服务程序的最后一条要执行的指令 3. INT与CALL的主要区别 CALL主要用来调用应用程序中的过程,而INT则用来调用系统服务程序。 过程可以有任意多个,而80x86系统最多只支持256个中断服务程序。 对过程的调用是指出过程地址,而对中断服务程序的调用则是给出中断类型。 INT总是段间调用。 INT将标志寄存器和返回地址进栈,而CALL指令只将返回地址进栈。 12.3 外同步指令和空操作指令 1. 停机:HLT 操作:使CPU处于暂停状态(中断请求信号或复位信号) 对标志位的影响:不影响标志 2. 等待:WAIT 操作:使CPU进入等待状态(TEST信号) 对标志位的影响:不影响标志 3. 交权:ESC ext_op , src 4. 锁定:LOCK(封锁前缀) 操作:执行某指令是保持一个总线锁定信号(LOCK信号) 对标志位的影响:不影响标志 5. 空操作:NOP 操作:不做任何操作,仅花费3个时钟周期 对标志位的影响:不影响标志 1.I/O接口 因I/O设备种类繁多、工作原理各异,每个I/O设备都通过专门的I/O接口与系统相连 接口分为并行接口和并行接口两类 I/O接口包含多个存放数据、状态和控制信息的寄存器,分别以端口地址标识 数据的输入/输出是通过I/O端口实现的 80x86系统通过I/O指令实现对I/O端口的读写 I/O接口的功能越强、内部寄存器的种类和数量越多,程序设计就越复杂 2.CUP与外设间的接口信号 数据:数字量、模拟量、开关量 状态信息(反映外设或接口电路的状态) 控制信息 3.CUP与外设间的数据传送方式 无条件I/O方式 查询I/O方式 中断I/O方式 DMA方式 1. 中断基本概念 中断:在CPU执行程序的过程中,由于出现了某个事件,CPU暂停当前序,而转去执行处理该事件的程序,处理完后,返回被暂停的程序处继续执行,这个过程称为中断 中断源:引起中断的事件称作中断源 中断服务程序:处理该事件的程序称作中断服务程序 中断系统:实现中断的硬件及软件称为中断系统 中断类型:80x86系统允许25
文档评论(0)