ImageVerifierCode 换一换
格式:DOCX , 页数:8 ,大小:16.10KB ,
资源ID:4458950      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4458950.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(实验3 8259中读取键盘并显示实验.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

实验3 8259中读取键盘并显示实验.docx

1、实验3 8259中读取键盘并显示实验实验3 中断控制器接口编程一、 实验目的1 掌握8259、8255编程方法。2 学习DEBUG调试程序的使用方法。二、 实验准备1 复习教材微机接口技术及应用有关8259编程内容。2 参考“汇编语言编程设计”有关书籍,预习DEBUG调试程序的使用方法。三、 实验内容 (一)用EDIT进行文件编辑步骤同实验2,文件名为COMMU.ASM (二) 编译程序1 程序汇编C:WINDOWSSHY2MASM.EXE COMMU显示 object filename COMMU.OBJ source listingNUL.LST COMMU.LSTcross refere

2、nceNUL.CRF 显示 Warring Errors 和Severe Errors信息若无错则可进行链接,若有错用EDIT修改源程序后再汇编直至无错误提示通过汇编为止。2 程序链接C:WINDOWSSHY2LINK COMMU显示 Run File SOUND.EXE List FileNUL.MAP Libraries.LIB 查子目录中文件,可见SOUND.OBJ 、COMMU.LST、 SOUND.EXE文件已存在。(三) 运行程序1. C:WINDOWSSHY2COMMU2. 从键盘输入发送内容,以自测方式,接受发送内容并显示在屏幕上。(四) 用DEBUG调试程序1. 进入DEBU

3、G并装入程序COMMU.EXE,操作如下:C:WINDOWSSHY2DEBUG COMMU.EXEDEBUG以-来回答。2. 用反汇编命令显示程序目标码,操作如下:-U屏幕显示 12B5:0000 1E push ds 12B5:0001 B8 0000 mov ax,0 12B5:0004 50 push ax 12B5:0005 BA 03FB mov dx,3fbh 12B5:0008 B0 80 mov al,80h 12B5:000A EE out dx,al 12B5:000B BA 03F8 mov dx,3f8h 12B5:000E B0 60 mov al,60h 所示信息从

4、左至右依次为:段地址:偏移地址,机器语言指令,汇编语言指令查看程序目标码,并记录需设置断点处的地址。3. 设置断点,用G命令分段运行程序,操作如下:-G(为断点处的偏移地址的低字节)如键入G14,屏幕显示AX=0060 BX=0000 CX=0176 DX=03F9 SP=00FC BP=0000 SI=0000 DI=0000DS=1295 ES=1295 SS=12A5 CS=12B5 IP=0014 NV UP EI PL NZ NA PO NC12B5:0014 B000 MOV AL,00程序停在断点处,显示内容为所有寄存器以及各标志位的当前值,最后一行给出下一条将要执行的指令地址、

5、机器语言、及汇编语言。记录有关内容,填写汇编语言程序注释中要求的内容。设置下一断点,用G命令继续运行程序。 四、 实验报告1. 打印源程序SOUND.ASM清单,填空注释。五、 参考程序.model small.stack.dataold_ip09 dw ?old_cs09 dw ?old_ip0f dw ?old_cs0f dw ?count dw ?buffer db 20h dup(?)buf_p dw ?start_msg db 0ah,0dh,RUN!0ah,0dh,$end_msg db 0ah,0dh,end!0ah,0dh,$full_msg db buffer full !0

6、ah,0dh,$.code main proc farstart:mov ax,datamov ds,axlea ax,buffermov buf_p ,axmov count,0;save old interrupt 09hmov al,09hmov ah,35int 21hmov old_cs09,esmov old_ip09,bxpush ds;set new interruptlea dx,kdbintmov ax,seg kdbintmov ds,axmov al,09hmov ah,25hint 21hpop ds ;set keyboard interrupt mask bits

7、in al,21hand al,0fdhout 21h,alstimov di,20000delay: mov si,30000delay1: dec sijnz delay1dec dijnz delaymov di,20000dey: mov si,30000dey1: dec sijnz dey1dec dijnz deymov di,20000de: mov si,30000de1: dec sijnz de1dec dijnz demov di,20000d: mov si,30000d1: dec sijnz d1dec dijnz dcli;save oldpush dsmov

8、dx,old_ip09mov ax,old_cs09mov ds,axmov al,09hmov ah,25hint 21hpop ds;enable in al,21hand al,0fdhout 21h,alstimov ax,4c00hint 21hmain endp;.kdbint proc near push ax push bx cld in al,60h push ax in al,61h mov ah,al or al,80h out 61h,al xchg ah,al out 61h,al pop ax test al,80hjnz return1mov bx,buf_pmo

9、v bx ,alcall display_hexinc bxinc countmov buf_p,bxcheck:cmp count ,20hjb return1return1:climov al,20hout 20h,alpop bxpop axiretkdbint endpdisplay_hex proc nearpush axpush cxpush dxmov ch,2mov cl,4nextb:rol al,clpush axmov dl,aland dl,0fhor dl,30hcmp dl,3ahjl dispitadd dl,7hdispit:mov ah,2int 21hpop axdec chjnz nextbmov ah,2mov dl,int 21hpop dxpop cxpop axretdisplay_hex endpend start

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1