第六章“输入输出及接口”习题答案.docxVIP

第六章“输入输出及接口”习题答案.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE PAGE 1 第六章 输入输出及接口 〔习题 6.2〕 I/O 端口与存储器地址常有 ???????和 ???????两种编排方式,8088/8086 处理器支持后者,设计有专门的 I/O 指令。其中指令 IN 是将数据从 ???????传输到 ???????, 执行该指令时 8088/8086 处理器引脚产生 ???????总线周期。指令“OUT DX, AL ”的目的操作数是 ???????寻址方式,源操作数是 ????????寻址方式。 〔解答〕 (I/O 端口与存储器地址)统一编址 (I/O 端口与存储器地址)独立编址外设 处理器 I/O 读 (I/O 端口的DX)寄存器间接寄存器 〔习题 6.4〕 基于教程 P142 图 6-7 接口电路,编程使发光二极管循环发光。具体要求是:单独按下 开关 K ,发光二极管以L 、L 、L 、……L 顺序依次点亮,每个维持200ms,并不断重复, 0 0 1 2 7 直到有其他按键操作;单独按下开关K ,发光二极管以L 、L 、L 、……L 顺序依次点亮, 1 7 6 5 0 7每个也维持 200ms,并不断重复,直到有其他按键操作;其他开关组合均不发光,单独按下开关 K ,则退出控制程序。延时 200ms 可以直接调用子程序DELAY 实现。 7 〔解答〕 again: mov dx,6000h mov al,0ffh out dx,al  ;全不亮 again1: in al,dx cmp al,7fh ;D7~D0=0111111B ? jz done ;单独按下 K7,退出 cmp al,0feh ;D7~D0 ? jz next1 ;单独按下 K0,转移到 next1 cmp al,0fdh ;D7~D0 ? jz next2 ;单独按下 K1,转移到 next2 jmp again ;其它情况不点亮 next1: mov cx,8 mov al,1 ;从 K0 开始 next11: out dx,al ;某个 LED 电亮 call delay ;延时 200ms shl al,1 ;rol al,1 loop next11 next2: jmp again1 mov cx,8 next21: mov al,80h out dx,al call delay shr al,1 loop next21 jmp again1 ;从 K7 开始 ;某个 LED 电亮 ;延时 200ms ;ror al,1 done: mov al,0ffh out dx,al ;全不亮 〔习题 6.5〕 有一个查询输入接口电路类似图 6-9,但其数据端口为 8F40H、状态端口为 8F42H。从 0状态端口最低位可以获知输入设备是否准备好一个字节的数据:D0=1 表示准备好,D =0 说明没准备好。不考虑查询超时,编程从输入设备读取100 个字节保存到 INBUF 缓冲区。 0 〔解答〕 again: mov bx,offset inbuf mov cx,100 mov dx,8f42h status: in al,dx test al,01h jz status mov dx,08f40h in al,dx mov [bx],al inc bx ;查询一次 ;输入一个字节 loop again ;循环,输入 100 个字节 〔习题 6.5〕(第二版) 请描述采用查询方式进行 CPU 与外设间传送数据的过程。如果有一个输入设备,其数据口地址为 FFE0H,状态口地址为 FFE2H,当状态标志 D0=1 时,表明一个字节的输入数据就绪,请编写利用查询方式进行数据传送的程序段。要求从该设备读取 100 个字节并写到从 2000H:2000H 开始的内存中。注意在程序中添加注释。 〔解答〕 通过读取状态寄存器的标志位来检查外设是否就绪。若不就绪就继续查询,即程序不断循环;直至就绪。然后,进行下一步的传送工作。 mov bx,2000h mov ds,bx mov cx,100 again: mov dx,0ffe2h status: in al,dx ;查询一次 test al,01h jz status mov dx,0ffe0h in al,dx ;输入一个字节 mov [bx],al inc bx 〔习题 6.6〕 loop again ;循环,输入 100 个字节 6 6有一个查询输出接口电路类似图 6-10,但其数据端口和状态端口均为 8000H,并从状态端口的 D6 位获知输出设备是否能够接收一个字节的数据:D =1 表示可以接收、D =0 说明不能接收。不考虑查询超时,编程将存放于缓冲区OUTBU

文档评论(0)

hao187 + 关注
官方认证
文档贡献者

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

认证主体武汉豪锦宏商务信息咨询服务有限公司
IP属地上海
统一社会信用代码/组织机构代码
91420100MA4F3KHG8Q

1亿VIP精品文档

相关文档