您好,欢迎访问三七文档
华北电力大学科技学院实验报告第页共页实验一、数据转换实验一、实验目的1、初步掌握在PC机上建立、汇编、链接和运行8086/88汇编语言程序的过程。2、通过对两个验证性实验的阅读、调试,掌握不同进制数及编码相互转换的程序设计方法。3、完成程序设计题,加深对数码转换的理解,了解简单程序设计方法。二、实验条件一台计算机三、实验内容与步骤1)设二字节十六进制数存放于起始地址为3500H的内存单元中,把他们转换成ASCII码后,再分别存入起始地址为350AH的四个内存单元。从书上ASCII码表中可知十六进制数加30H即可得到0H~9H的ASCII码,而要得到AH~FH的ASCII码,则需再加7H。2)参考程序如下:CODESEGMENTASSUMECS:CODESTART:MOVCX,0004hMOVDI,3500HMOVAX,0000HMOVDS,AXMOVDX,[DI]A1:MOVAX,DX华北电力大学科技学院实验报告第页共页ANDAX,000FHCMPAL,0AHJBA2ADDAL,07HA2:ADDAL,30HMOV[DI+0AH],ALPUSHDXMoVDX,[DI+0AH]POPDxINCDIPUSHCXMOVCL,04HSHRDX,CLPOPCXLOOPA1MOVAH,4CHINT21HCODEENDSENDSTART三、实验结论与分析错误分析:在保存文件时,第一步忘了加后缀.ASM,导致打开不了文件。实验结果:在调试运行后350AH的内存单元中会显示3500H中所转换的对应的ASCII码。四、实验心得第一次试验主要是熟悉实验环境,实验内容比较简单,也容易理解。华北电力大学科技学院实验报告第页共页实验二、接收小写字母转换成大写字母并显示一、实验目的通过阅读并调试示例程序,完成程序设计题,掌握利用DOS中断的调用来实现人机对话的编程方法。二、实验条件一台计算机三、实验内容与步骤1)从键盘上接收一串小写字母存入内存单元,经过转换后在屏幕上显示其大写字母。设计思路:利用DOS中断的01号子功能接收键盘输入的一串字符串并存入内存单元,当接收到回车键时,将小写字母的ASCII码转换为大写字母的ASCII码,利用DOS功能的02号子功能将其显示在屏幕上。2)参考程序如下:DATASEGMENTBUFDB200DUP(?)DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVSI,OFFSETBUFMOVCL,00HA1:MOVAH,01HINT21H华北电力大学科技学院实验报告第页共页CMPAL,0DHJZA2SUBAL,20HMOV[SI],ALINCSIINCCLJMPA1A2:MOVDL,0AHMOVAH,02HINT21HMOVDL,0DHINT21HMOVSI,OFFSETBUFMOVCH,00HA3:MOVDL,[SI]MOVAH,02HINT21HINCSI华北电力大学科技学院实验报告第页共页LOOPA3Delay:jmpDelayMOVAH,4CHINT21HCODESEGMENTENDSTART四、实验结论与分析掌握利用DOS中断的调用来实现人机对话的编程方法。五、实验心得开始用汇编写程序有好些东西都忘了,通过这个实验的确将某些汇编的知识回忆起来了,通过实验了解了程序运行过程中内部存储器之间的变化,从内部更深层次的理解了程序执行过程。华北电力大学科技学院实验报告第页共页实验三、中断8259应用一、实验目的1、通过阅读并调试示例程序,学习8088/86与8259A的连接与控制方法,掌握8259A中断控制器的工作原理。2、完成程序设计题,学会编写中断服务程序。二、实验条件一台计算机,8259A可编程中断控制器,仿真软件三、实验内容与步骤1、实验原理8259A是一种可编程中断控制器,与8088/86微机兼容,能处理8级向量优先权中断,亦可以通过级联构成64级向量优先权中断系统。具有可编程控制中断方式,并能分别屏蔽各个中断请求。通过4个初始化命令字(icw1~icw4)及3个操作命令字(ocw1~ocw3)使用8259A可编程程序中断控制器。2、实验内容用8088/86控制8259可编程中断控制器,实现对外部中断的响应和处理。要求程序对每次中断进行计数,并将计数结果用8255的PA口输出到LED显示。3、参考流程图及程序modeequ80hpa8255equ8000hpb8255equ8001hctl8255equ8003hicw1equ00010011bicw2equ00100000bicw4equ01hocw1equ11111110bcs8259aequ09000hcs8259bequ09001hdatasegmentcntdb0cndb0dataendscodesegment华北电力大学科技学院实验报告第页共页assumecs:code,ds:dataienterprocnearpushaxpushdxmovdx,pb8255inccntcmpcnt,0ahjnzP1movcnt,0inccnmoval,cnoutdx,alP1:movdx,cs8259amoval,20houtdx,alpopdxpopaxiretienterendpinitprocnearmovdx,cs8259amoval,icw1outdx,almovdx,cs8259bmoval,icw2outdx,almoval,icw4outdx,almoval,ocw1outdx,alretinitendpstartprocnearmovdx,ctl8255moval,modeoutdx,alclimovax,0movds,axmovbx,4*icw2movax,offsetientermov[bx],axmovax,codeincbxincbx华北电力大学科技学院实验报告第页共页mov[bx],axcallinitmovax,datamovds,axmovcn,0moval,cnmovdx,pb8255outdx,alstilp:nopjmplpstartendpcodeendsendstart四、实验结论与分析实验结果:通过按单脉冲,使之产生中断,然后再LED显示按下的次数就是中断的次数。五、实验心得通过这次试验,对8259可编程中断控制器控制接口有了比较深的认识。这次的汇编程序写起来有些困难,多方面查找资料,和同学讨论才堪堪写出,实验过程中对这个芯片的每一个接点的作用可以说记住了,实验胜过强记的理论知识。华北电力大学科技学院实验报告第页共页实验四、定时/计数器8253应用一、实验目的通过阅读并调试示例程序,完成程序设计题,掌握8253的基本工作原理和编程方法,熟悉8253在系统中的典型接法。二、实验条件一台计算机,8253可编程定时/计数器三、实验内容与步骤1、实验原理8253可编程定时/计数器是Intel公司生产的统一外围接口芯片它有3个独立的16位计数方式和操作方式都通过编程控制。2、实验内容利用8088/86外接8253可编程定时/计数器,可以实现对外部事件进行计数,且可以设置断点读回计数器的值。本实验中计数器按方式3工作,即十六位二进制计数器。当计数设置好后,计数器就开始计数。如果要读入计数器的值,要先锁存计数值,才能读到计数值,本实验主要产生1HZ的脉冲波使LED灯以一秒闪烁。3、流程图及参考程序CONTROLEQU08003HCOUNT0EQU08000HCOUNT1EQU08001HCOUNT2EQU08002HCODESEGMENTASSUMECS:CODESTARTPROCNEAR华北电力大学科技学院实验报告第页共页MOVAL,36HMOVDX,CONTROLOUTDX,ALMOVAX,10000MOVDX,COUNT0OUTDX,ALMOVAL,AHOUTDX,ALMOVAL,76HMOVDX,CONTROLOUTDX,ALMOVAX,100MOVDX,COUNT1OUTDX,ALMOVAL,0OUTDX,ALAGAIN:MOVAL,00000000BMOVDX,CONTROLOUTDX,AL华北电力大学科技学院实验报告第页共页MOVDX,COUNT0INAL,DXMOVBL,ALINAL,DXMOVAH,ALMOVAL,BLJMPAGAINSTARTENDPCODEENDSENDSTART四、实验结论与分析实验结果:LED灯以一秒闪烁。五、实验心得通过实验懂得了如何将两块不同的芯片结合起来,8088/86外接8253的方法让我对芯片之间的通信有个了解,通过不同的接点和每个接点功能的不同来实现了两个芯片之间的功能上的某些联系。加深了对课本知识的理解华北电力大学科技学院实验报告第页共页实验五、并行接口8255应用一、实验目的1、通过阅读并调试示例程序,掌握8255A可编程并行接口的工作原理;2、完成程序设计题,学会并行接口电路的设计,及编写输入输出控制程序。二、实验条件一台计算机,8255A可编程控制芯片,LED灯的电路板三、实验内容与步骤1、实验原理8255A是可编程的通用并行输入输出接口芯片,因通用性强,使用灵活,可直接与cpu总线相连,应用非常广泛。8255A芯片内部有3个8位的输入输出端口,即A口、B口、C口。从内部控制的角度来讲,可分为两组:A组和B组。A组控制模块管理A口和C口的高4位(pc7~PC4),B组控制模块管理B口和C口的低4位(pc3~pc0)。2、实验内容设计跑马灯程序设计,要求K0=0,从左向右跑马灯;K1=0时,从右向左跑马灯;K2=0时,从左从右向中间跑马灯,LED从pc口输出。完成电路设计及程序的编制,进行调试并验证结果。3.参考程序MODEEQU082HPORTAEQU8000HPORTBEQU8001HPORTCEQU8002HCADDREQU8003HDATASEGMENTPOSDB0FFHNOWDATADB0FFHLEFTDB0FFHRIGHTDB0FFHDATAENDSCODESEGMENT华北电力大学科技学院实验报告第页共页ASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVAL,MODEMOVDX,CADDROUTDX,ALINPUT:MOVDX,PORTBINAL,DXCMPAL,NOWDATAJNZINITIALCMPAL,0FEHJZK0CMPAL,0FDHJZK1CMPAL,0FBHJZK2JMPINPUTINITIAL:MOVNOWDATA,ALCMPAL,0FEHJZINTIK0CMPAL,0FDHJZINTIK1CMPAL,0FBHJZINTIK2INTIK0:MOVPOS,10000000BJMPOUTPUTINTIK1:MOVPOS,00000001BJMPOUTPUTINTIK2:MOVLEFT,10000000BMOVRIGHT,00000001BMOVAL,LEFTORAL,RIGHTMOVPOS,ALJMPOUTPUTK0:RORPOS,1JMPOUTPUTK1:华北电力大学科技学院实验报告第页共页ROLPOS,1JMPOUTPUTK2:RORLEFT,1ROLRIGHT,1MOVAL,LEFTORAL,RIGHTMOVPOS,ALOUTPUT:MOVAL,POSMOVDX,PORTCOUTDX,ALMOVCX,5000HLOOP$JMPINPUTCODEENDSENDSTART四、实验结论与分析错误分析:由于连接线有的有问题,造成接触不良,给实验造成的不可预测的结果,比如只有亮一个灯的情况。实验结果:K0=0,从左向右跑马灯;K1=0时,从右向左跑马灯;K2=0时,从左从右向中间跑马灯五、实验心得在这次课程设计的过程中的收获是很大的,三种跑马灯的实现让人很有成就感。这次课程设计我主要是应用老师教的相关知识及自己的一些想法,完成了并行接口8255应用问题。经过老师的指导,才做到了心中有数,我在此很想感谢给予我耐心解答
本文标题:接口实验-华电
链接地址:https://www.777doc.com/doc-6211334 .html