《微机原理与接口技术》课程实验报告班级:9131042101实验一:系统认识与显示一、实验目的(1)掌握TD系列微机原理及接口技术教学实验系统的操作,熟悉Wmd86联机集成开发调试软件的操作环境。(2)掌握汇编语言中与数据有关的不同的寻址方式。(3)掌握在PC机上以十六进制形式显示数据的方法。二、实验设备PC机一台、微机原理实验仪一套三、实验内容编写程序,将31H~3FH共16个数写入内存3000H开始的16个存储单元中,将数据传送到4000H开始的16个存储单元中,并显示出来。四、实验过程1.运行Wmd软件,进入Wmd集成开发环境。2.编写实验程序,并进行编译、链接和加载,观察运行结果。五、实验程序STACKKSEGMENTSTACKDW256DUP(?)STACKKENDSDATASEGMENTDATAENDSCODESEGMENTASSUMECS:CODE,SS:STACKKSTART:PUSHDSXORAX,AXMOVDS,AXMOVSI,3000HMOVCX,10HMOVAL,30HL1:MOV[SI],ALINCSIINCALLOOPL1MOVSI,3000HMOVDI,4000HMOVCX,10HREPMOVSBMOVBX,4010HMOV[BX],'$'MOVDX,4000HMOVAH,9HINT21HMOVAX,4C00HINT21HCODEENDSENDSTART六、实验结果实验二:数码转换程序实验一、实验目的(1)掌握不同进制数及编码互相转换的程序设计方法,加深对数制转换的理解。(2)熟悉程序调试的方法。二、实验设备PC机一台、TD-PITE实验装置一套三、实验内容编写程序,将输入的数据0FFH,2AH,0C5H转换为十进制,并显示出来。四、实验过程1.运行Wmd软件,进入Wmd集成开发环境。2.编写实验程序,并进行编译、链接和加载,观察运行结果。五、实验程序DATASEGMENTARRAY1DB0FFH,2AH,0C5HARRAY2DB20DUP(?)DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATA,SS:STACKKSTART:MOVAX,DATAMOVDS,AXMOVBL,0AHMOVSI,OFFSETARRAY1MOVDI,OFFSETARRAY2MOVCX,3L1:MOVAL,[SI]L2:MOVAH,00HDIVBLADDAH,30HMOV[DI],AHINCDICMPAL,0JNZL2INCSIMOV[DI],2CHADDDI,1LOOPL1MOV[DI],'$'MOVDX,OFFSETARRAY2MOVAH,9HINT21HMOVAX,4C00HINT21HCODEENDSENDSTART六、实验结果实验三:子程序设计实验一、实验目的(1)学习子程序的定义和调用方法。(2)掌握子程序、子程序的嵌套、递归子程序的结构。(3)掌握子程序的程序设计及调试方法。二、实验设备PC机一台、TD-PITE实验装置一套三、实验内容求字节序列中的最大值和最小值,并显示出来。四、实验过程1.运行Wmd软件,进入Wmd集成开发环境。2.根据程序流程图编写实验程序,并进行编译、链接和加载,观察运行结果。五、实验程序STACKKSEGMENTSTACKDW256DUP(?)STACKKENDSDATASEGMENTARRAY1DB80H,90H,0FFH,0C5H,70H,60H,55H,0CH,1BH,0FHARRAY2DB5DUP(?)DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATA,SS:STACKKSTART:MOVAX,DATAMOVDS,AXMOVCX,10MOVSI,OFFSETARRAY1MOVBH,[SI]MOVBL,[SI]L1:INCSICMPBH,[SI]JGEL2MOVBH,[SI]L2:CMPBL,[SI]JLEL3MOVBL,[SI]L3:DECCXJNZL1MOVAL,BHCALLDISMOVAH,0MOVAL,BLCALLDISMOVAX,4C00HINT21HDISPROCNEARPUSHBXPUSHSIPUSHAXMOVCL,4SHRAL,CLMOVBH,ALPOPAXANDAL,0FHMOVBL,ALCMPBH,09HJBEl11ADDBH,7Hl11:ADDBH,30HCMPBL,09HJBEl12ADDBL,7Hl12:ADDbl,30hMOVAH,02hMOVDL,BHINT21hMOVAH,02hMOVDL,BLINT21hMOVAH,02hMOVDL,20hINT21hPOPSIPOPBXRETCODEENDSENDSTART六、实验结果实验四:排序程序设计实验一、实验目的(1)掌握分支、循环、子程序调用等基本的程序结构。(2)学习综合程序的设计、编制及调试。二、实验设备PC机一台、TD-PITE实验装置一套三、实验内容使用冒泡排序法,对一组无符号数进行从大到小的排序,并将排序结果显示出来。四、实验过程1.运行Wmd软件,进入Wmd集成开发环境。2.根据程序流程图编写实验程序,并进行编译、链接和加载,观察运行结果。五、实验程序STACKKSEGMENTSTACKDW256DUP(?)STACKKENDSDATASEGMENTARRAY1DB80H,90H,0FFH,0C5H,70H,60H,55H,0CH,1BH,0FHARRAY2DB5DUP(?)DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATA,SS:STACKKSTART:MOVAX,DATAMOVDS,AXMOVCX,9L1:MOVDX,CXMOVSI,OFFSETARRAY1L2:MOVAL,[SI]CMPAL,[SI+1]JAEL3XCHGAL,[SI+1]MOV[SI],ALL3:INCSIDECDXJNZL2DECCXJNZL1MOVCX,10MOVSI,OFFSETARRAY1L4:MOVAL,[SI]CALLDISINCSIDECCXJNZL4MOVAX,4C00HINT21HDISPROCNEARPUSHBXPUSHSIPUSHCXPUSHAXMOVCL,4SHRAL,CLMOVBH,ALPOPAXANDAL,0FHMOVBL,ALCMPBH,09HJBEl11ADDBH,7Hl11:ADDBH,30HCMPBL,09HJBEl12ADDBL,7Hl12:ADDbl,30hMOVAH,02hMOVDL,BHINT21hMOVAH,02hMOVDL,BLINT21hMOVAH,02hMOVDL,20hINT21hPOPCXPOPSIPOPBXRETCODEENDSENDSTART六、实验结果实验五:静电存储器扩展实验一、实验目的(1)了解存储器扩展的方法和存储器的读/写。(2)掌握CPU对16位存储器的访问方法。二、实验设备PC机一台、TD-PITE实验装置一套三、实验内容在实验箱中如图所示进行连线,完成静态存储器的扩展,编写实验程序,并将字符串'Thisiscomputer!'写入SRAM的扩展的存储单元0050H~中,然后通过系统命令查看该存储空间,检测写入数据是否正确。四、实验过程1.按照连线图接线。2.运行Wmd软件,进入Wmd集成开发环境。3.编写实验程序,并进行编译、链接和加载,观察运行结果。五、实验接线图六、实验程序SSTACKSEGMENTSTACKDW256DUP(?)SSTACKENDSDATASEGMENTSTRINGDB'Thisiscomputer!','$'DATAENDSCODESEGMENTSTARTPROCFARASSUMECS:CODE,DS:DATA,SS:SSTACKMOVAX,DATAMOVDS,AXMOVBX,8000HMOVES,BXLEASI,STRINGMOVDI,0050HMOVCX,100CLDREPMOVSBMOVAX,8000HMOVDS,AXMOVDX,0050HMOVAH,9INT21hMOVAX,4CHINT21HSTARTENDPCODEENDSENDSTART七、实验结果显示字符串'Thisiscomputer!'实验六:中断控制器8259应用实验一、实验目的(1)掌握8259中断控制器的工作原理。(2)学习8259的应用编程方法。(3)掌握8259级联方式的使用方法。二、实验设备PC机一台、TD-PITE实验装置一套三、实验内容在实验箱中如图所示进行连线,编写实验程序,使每当按动一次‘KK1+’,产生一次外部中断,并在屏幕上显示一个字符。四、实验过程1.按照连线图接线。2.运行Wmd软件,进入Wmd集成开发环境。3.编写实验程序,并进行编译、链接和加载,观察运行结果。五、实验接线图主片8259A从片8259AINTINTCAS2:0CAS2:0IR2IR4IR6IR7IR1INTR(内核)串口0MIR6MIR7SIR1六、实验程序SSTACKSEGMENTSTACKDW256DUP(?)SSTACKENDSDATASEGMENTARRYDB'Thisiscomputer!','$'DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATA,SS:SSTACKSTART:MOVAX,DATAMOVDS,AXMOVSI,OFFSETARRYMOVCX,17PUSHDSMOVAX,0000HMOVDS,AXMOVAX,CSMOVDI,003EHMOV[DI],AXMOVAX,OFFSETMIR6MOVDI,003CHMOV[DI],AXCLIPOPDSMOVDX,0020HMOVAL,11HOUTDX,ALMOVDX,0021HMOVAL,08HOUTDX,ALMOVDX,0021HMOVAL,04HOUTDX,ALMOVDX,0021HMOVAL,01HOUTDX,ALMOVDX,0021HMOVAL,07FHOUTDX,ALSTIAA1:NOPJMPAA1MIR6:STIMOVAH,02HMOVDL,[SI]INT21HINCSIDECCXJNZL1MOVCX,17MOVSI,OFFSETARRYL1:MOVAL,20HOUT20H,ALIRETCODEENDSENDSTART七、实验结果加载成功后,运行程序,每当按动一次‘KK1+’,产生一次外部中断,并在屏幕上按顺序显示字符串Thisiscomputer!的一个字符。实验七:8254定时/计数器应用实验一、实验目的(1)掌握8254的工作方式及应用编程。(2)掌握8254典型应用电路的接法。二、实验设备PC机一台、TD-PITE实验装置一套三、实验内容在实验箱中如图所示进行连线,编写程序,设置8254的工作方式,使用8254的计数功能采用级联的方法将字符串'Thisiscomputer!'以0.5s/次的频率显示出来,且与OUT1相连的LED灯以1hz的频率闪烁。四、实验过程1.按照连线图接线。2.运行Wmd软件,进入Wmd集成开发环境。3.编写实验程序,并进行编译、链接和加载,观察运行结果。五、实验接线图六、实验程序SSTACKSEGMENTSTACKDW256DUP(?)SSTACKENDSDATASEGMENTSTRINGDB'Thisiscomputer','$'DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATA,SS:SSTACKSTART:MOVAX,DATAMOVDS,AXMOVDX,06C6HMOVAL,27HOUTDX,ALMOVDX,06C0HMOVAL,10HOUTDX,ALMOVDX,06C6HMOVAL,67HOUTDX,ALMOVAL,10HL1:MOVDX,06C2HOUTDX,ALINAL,DXCMPAL,0JNZL1MOVDX,OFFSETSTRINGMOVAH,9INT21HL2:JMPL1MOVAH,4CHINT21HCODEENDSENDSTART七、实验结果加载成功后,运行