微机实验一到八复习资料.docx

上传人:李司机 文档编号:7456777 上传时间:2025-01-04 格式:DOCX 页数:21 大小:146.10KB
返回 下载 相关 举报
微机实验一到八复习资料.docx_第1页
第1页 / 共21页
微机实验一到八复习资料.docx_第2页
第2页 / 共21页
微机实验一到八复习资料.docx_第3页
第3页 / 共21页
微机实验一到八复习资料.docx_第4页
第4页 / 共21页
微机实验一到八复习资料.docx_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《微机实验一到八复习资料.docx》由会员分享,可在线阅读,更多相关《微机实验一到八复习资料.docx(21页珍藏版)》请在三一办公上搜索。

1、20132014学年我次学期广东药学院试验报告试验课程名称:微型计算机技术及应用专业班级:电子信息工程12组号:第一组小组成员:谭浩敏(1205520131)陈润强(1205520106)刘赏源(1205520107)试验指导老师:何永玲(第一组)试验二汇编语言指令仿真组长:鼻浩敏组员:刘赏源、陈润强试验目的1 .学会用试验的方法验证理论,用理论来指导试脸,进一步熟识汇编语言开发环境.2 .深刻理解寻址方式的意义以及80X86指令的各种J址方式。3 .深刻理解80X86各种指令的其正含义及功能,4驾驭及数据行关的不同寻址方式.5 .接老熟识试胎操作软件的环境及运用方法.试验内容及要求一、在em

2、u8086中仿口的沾指令1 .仿真简洁指令,请按要求写出程序代码及试奥步骤.2 .将试验结果及埋论结果诳行比较,以便深化理解80X86指令的各种寻址方式.3 .试验过程中遇到的问题及解决方法,4 .写出心得体会及还未理制的学问点。DS=10H,SS=2000HX=1A2BH,B=12H,CX=339AH,BP=1200H,SP=1350H,SI=13S4H,(11350H)=0A5H,(11351H)=3CH,(11352H)=0FFH,(11353H)=26H,(11354H=52H,(11355H)=0E7H,(126MH)=9DH,(12645H)=16H,(21350H)=88H,(2

3、1351H)=51H.下列各指令都在此环境下执行,在下列各小题的空格中城人相应个指令的执行结果,试验代码:MOVAX,100OHMOVDS.AX:不能干脆给DS.SS赋值,只能通过通用寄存潺MOVAX,2000HMOVSS1XMOVAX,1A2BHMOVBX,120OHMOVCX1339A)IMOVBP,120OHMOVSP,1350HMOVSI11354HMOV0150HBX,O5HMOV0151HBX,3CHMOV0152HBX,0F11IMOVO153HBXJ,26HMOVSI.52IIMOV1HSI,OE7HMOV264H,)WIMOV265H,16IIMOVSS:1350H,88HM

4、OVSS:1351H.511.1.;在上面的环境下以下一行行的运行MOVAX,1352HMOVX.135211MOV0150HBX,Q1.MOVAX,0150HBPPOPAXADDSI,CXSUBBH.0150HBXSIINCBYTEPTR0152HBXINCWoRDPTR01501.1.BXSARBYTEPTR0150HBX,1SA1.BYTEPTR015(HIBX,1试验结果:1)MOVA,1352HAX=I352H(2) MOVA,1352HAX=ZfiEEH(3) movoisoh(bx),ch(113SOH1.=33H.(11351Hi=3CH(4) MOVAX,0150HBP)AX

5、=12SHPOPAXAX=$188HSP=1352H6)ADDS,CX(11354H)=ECHr(11355H)=IAHSF=0_,ZF=O,PF=O,CFa.OF=O(7)SUBBH,0150HBX11SIBH=Z1.,SF=,ZF=J1.,PF=2,CF=1.,0F=9(8)1NCBYTEPTRO152HBX)(11352H)=OOH,(113S3H)三26H,CF=O,(9)INCWORDPTR0150HB(11352H)=FFH,11353H=26H,CF=O(IO)SARBYTEPTRO15OH(B1.1(113S0H)=D2H,CF三1,OF=O(I1.)SA1.BYTEPTRO1

6、.SOH(BX)1I(11350H)=4AH,CF=2,OF=I【思索题】指出下列指令中源操作数和目的操作数的寻址方式:(肯定要留意分开写寻址方式)(1)MOVAX,OH(2)ADDBX,DX(3)PUSHCS(4)POPDS(5)MU1.B1.(6)MOVDX,1200H(7) MOVSB(8)S1.BAX,5BP+DI解:1)SRC为马上数寻址,DEST为寄存器寻址:SRC为寄存器寻址,OEST为寄存器间接寻址: 3)SRC为寄存器寻址,DEST为隐含堆栈指针寄存器间接寻址: 4)SRC为隐含堆栈指针寄存器间接寻址,DEST为寄存涔多址: 5SRC为寄存着寻址,DE3T为寄存器寻址:Sft

7、C为干脆寻址,OEST为寄存器寻址: 7)SRC为寄存器间接寻址,DEST为寄存器间接寻址:50,转移到TooH1.GH在TOOHIGH中将X显示出来;假如常符号减法X-Y引起溢出,JI1.转移到OVERF1.OW,在OVERF1.OW中将X、Y和XY的结果显示出来;否则,计算XY,并将结果存放在RESU1.T中(其中,Xxresu1.t均为字变代码FDatasegmentDA1.DB,三:$DAI2DBY=:$DAI3DB,X-Y=:$XDW-32768YDW32Resu1.tdwoDATAENDSSTACKSSEGMENTDW128DUP(?)STACKSENDSCODESEGMENTAS

8、SUMEDS:DATA,CS:CODESTART:MOVAXzDATAMOVDS,AXMOVAXzXCMPAXz50JGTOO-HIGHSUBAX,YJOOVERF1.OW;比较嘏如(X)大于50,则转向TOO-HIGH;一一则转移JNSNONNEG;无符号,则转NEGAX;X-Y为正时补玛为其本身为负时取补码刚好是它的相反数。NONNEG:MOVRESU1.TtAX沈溢出取肯定假.并将结果存入RESU1.TH1.T:科停TOO-HIGH:Movdx,offsetdaiMOVAH,09HINT21HMOVAX,X;取内存数到AXCA1.1.SHOW1.;显示十进制形式MOVAHJ甫停INT21

9、HMOVAX,4CoOH;退出程序INT21HSHOW1.:XORCXrCXMOVBf10NX1.:XORDXzDXDIVBXORDX,0e30HINCCXPUSHDXCMPAXQJNZNX1.NX2:P0PAXINT1.OH1.OOPNX2;显示XRETOVERF1.OW:MOVDX,OFFSETDAIMOVAH,09HNT21HMoVAXx取内次效到AXCA1.1.SH0W2;显示十进制形式M0VAHz7南停INT21HMOVAX,4C00H;退出程序INT21HSH0W2:XORCX,CXMOVBXr10NX3:XORDXzDXDIVBXORDX,0e30HINCCXPUSHDXCMPA

10、XzOJNZNX3NX4:P0PAXINTIOH1.PNX4MOVD1.,OAHMOVAHz02HINT21HMOVD,OFFSETDAI2MOVAHz09HINT21HMOVAX,Y;取内存数到AxCA1.1.SH0W3;显示十进制形式M0VAHz7潸停INT21HMOVAX,4CoOH;退出程序INT21HSH0W3:XORCX,CXMOVBr10NX5:XORDXzDXDIVBXORD,0e30HINCCXPUSHDXCMPAX,0JNZNX5NX6:POPAXINT1.OH1.PNX6MOVD1.OAHMOVAHz02HINT21H;显示XYMOVD,OFFSETDAI3MOVAHz0

11、9HINT21HMOVBXzXSUBBX,YMOVXfBXMOVAX,X;取内存数到AXCA1.1.SH0W4;显示十进制形式MOVAHz7南停INT21HMOVAX,4COOH;退出程序INT21HSH0W4:XORCX,CXMOVBXrIONX7:XOROXzOXDIVBXORDX.0e30HINCCXPUSHDXCMPAXzOJNZNX7NX8:POPAXINTIOH1.PNX8H1.TCODEENDSENDSTART【试验总结】内容一和内容二相对来说比较好理解,通过看一些实例,我们最终知道了应当怎么做,而内容三比较困难,我们用了很多时间,不过最终经过组内的学习和探讨,最终做出来了。我们

12、都从中收获到了很多新学问。试验四内存块移动试验蛆长:谭浩敏组员:刘赏源,陈润强一、试验目的1、熟识试验系统的编程和运用.2、/解内存的移动方法.3,加深对存储涔读写的相识.二、试验内容试验内容1用汇编语言编写程序实现以下运算,并将最终结果显示在屏幕上.假设变量X、Y、Z、V均为有符号的16位二进制.(V-(XY+Z-S40)代码:DATASEGMENTDAI1.DB0AH,0DH,INPUTX,%Z,VORDER1.Y;EG:+XXXX:$DAI2DB0AH,0DH,TYPEINTHENUMBER*DAI3DB0AH,0DH,NMBERX,Y,Z,VARE:$DAI4DB0AH,0DH,RES

13、U1.TWIS:$DAISDB0AH,0DH,EXTRAIS:$*BUFDB10DBONUMDB200DUP(O)XDWOYDWOZDWOVDWOWDW2DUP(O)DATAENDSSTACKSEGMENTDB200DUP(O)STACKENDSCODESEGMENTASSUMEDS:DATA,CS:CODE,SS:STACKStart:MOVA,DATAMOVDS,AXMOVDXzOFFSETDAI1.MOVAH,09HINT21HINPUT:MOVCH,04HMOVDI,OFFSETXDU04:MOVDX,OFFSETDAI2MOVAH,09HINT21HMOVDX,OFFSETBUFMO

14、VAH,0AHINT21HMOVC1.,BUF(1DECC1.MOVA,0MOVSI,3H1.:MOVB,10MU1.BXMOVB1.,BUFSISUBB1.,30HADDAXrBXINCSIDECC1.JNZH1.CMPBUF2,-jnenonegNEGAXNONEG:MOV(DI,AINCD1.INCD1.DECCHJNZD04MOVDX,OFFSETDAI3MOVAH,09HINT21HMOVAX,XCA1.1.SHOWMOVD1.,7MOVAH,02HINT21HMOVAX,YCA1.1.SHOWMOVD1.,MOVAH,02HINT21HMOVAX,ZCA1.1.SHOWMOVD1.

15、,MOVAH,02HINT21HMOVAX,VCA1.1.SHOWMOVAX,XIMU1.YMOVCX,AMOVB,DMOVAX,ZCWDADDCX,AXADCB,DSUBCX,540SBBB,0MOVAX,VCWDSUBAX,CXSBBD,BIDIVXMOVW,AMOVW+2,DXMOVDX,OFFSETDAI4MOVAH,09HINT21HMOVAX,WCA1.1.SHOWMOVDXfOFFSETDAI5MOVAH,09HINT21HMOVAX,W+2CA1.1.SHOWMOVAH,4CHINT21HSHOW:CMPAX,0JG1.OOP1.PUSHAXMOVD1.,-MOVAH,02HI

16、NT21HPOPAXNEGAX1.OOP1.:XORCX,CXMOVB,10QO:XORDX,DXDiVBXORDX,0E30HPUSHDXINCCXCMPAX,0JNEQOQ1:POPAXINTIOH1.OOPQ1.RETCODEENDSENDSTART三、试验体会这次试3的魔点主要在于各个数的入及出,汇的数字入要考唐根多向A1.比如有符号数及无符号数,这对于不热但汇的我们相对较难.依先之篇薛1今做(a:律帝做舟黄牙、威悯我【试验目的】:1 .学会思索程序的不足,并找出改进方法。2 .熟识运用DoS和B1.OS功能调用.3 .驾驭汇编语言循环程序的编写.【试验内容】,1. “第3章(3)汇编

17、程序设计.ppt”中的作业。2.参考“第3章(3)汇编程序设计pp1.,关于排序的程序并完善和修改完成如卜.功能程序:能通过键盘随机地输入几个数据(16位有符号数),然后进行从小到大进行排序,最终结果显示在屏幕上。MOVDSzAXMOVD,MY8255.MODEMOVA1.z80HOUTDXzA1.MOVD,MY82S5.AMOVA1.zOFFHOUTDXzA1.MOVD,MY82S5.Bmova1.zoffhOUTDXzA1.1.00P3:MOVIBQFEHMOVCX.81.OOP1.:MOVA1.z1.BMOVDX,MY8255_BOUTDXzA1.CA1.1.DA1.1.YRO1.IBJ

18、1.OOP1.P1MOVA1.,OFFHMOVD,MY8255.BOUTDXzA1.MOV1.A,OFEHMoVCX,81.00P2:MOVA1.zIAMOVDX,MY82S5_AOUTD,A1.CA1.1.DA1.1.YRO1.1.ArI1.OOP100P2MOVA1.zOFFHMOVDX,MY8255_AOUTDXzA1.JMP1.P3;定义8255J:作方式;工作方式QA口和B口为输出;写八1发出的起始数据;写Br发出的起始数据;将8口起始数据左移再写入B口;跳可接着循环消全暗QU11:MOVAX,4COOH;结束程序退出INT21HDA1.1.YPROCNEAR;软件延时子程序PUSH

19、CXPUSHAXMOVCXtOFFHD1.:MOVAXQFFH;该假不能太大,否则在PKneUS中看结果很慢D2:DECAXJNZD2100PD1.POPAXPOPCXRETDaiiyendpCODEENDSENDSTART(5)试监室检查问即提问:灯为什么会亮?怎么亮的?开关开的时候对应的灯是亮还是灭?为什么B口会随着A口变更而变更?答:如图1.ED灯是共阳极的,另一端只要是低电平,灯就会亮。开关开的时候,对应的灯是亮的。由程序可以知道,A口为输入,B口为输出,输入限制输出,所以B口会随A口变更而变更。试验八8255并口限制器应用试验(二)一、试验要求流水灯显示试验。编写程序,使8255的A

20、口和B口均为输出,实现16位数据灯的相对循环显示.二、试验目的(1)驾驭8255的工作方式及应用编程。(2)驾驭8255的典型应用电路接法。三、试验电路及连线参考图6-1设置正确的连线电路图。四、试验说明及程序流程首先分别向A口和B口写入7FH和卜工H,然后分别将该数右移和左移一位,再送到端口上,这样循环下去。从而实现潦水灯的显示。参考试验程序流程如图7T所示。I初始化S255铝制寄仃器II.IUA1.:发出的起始数州80HI工1;B1.1.发出的起始数据O1.HiI-A1.1.数据力移再写入AH1将B1.1.数如r移入BiIJII7-18255井口应用试验(2)参考程序潦程图五、思索题(1)

21、分别向A口和B口写入TFH和FEH,为什么要写入这两个数,其他的数字可以吗?假如输入其他的数字,会出现什么现象呢?答:A口的7FH=011.1.1111,即第一个灯亮,其他灯灭,B口的FEH=IIu1110,即最终一个灯亮,其他灯灭。可以输入其他数字,数字不一样,相对位置的灯亮灭状况也不一样。(2)假如票求两组灯从中间起先显示,又如何修改程序?IOYOMY8255_AMY8255_BMY8255_CMY8255MODE800011IoYO+0011*2K)YOw1.H*2I0Y0+O21.1.2IOYO03112;#绵舔对应8255的片选IOYOift1地址;8255的A地址;8255的B口地

22、址;8255的C口地址:8255的限制寄存器地址STACK1.SEGMENTSTACKDW256DUP(?)STACK1ENDSDATA1.A1.BDATASEGMENTDB0DB0ENDS:定义数据变地CODESEGMENTASSIjMECSrCODE1DSrDATASTART:MOVAX,DATAMOVDS1AXMOVDX.MY8255MODEMOVA1.HOH011DX,A1.:定义8255工作方式:工作方式O,A口和B口为输出MOVDX.MY8255_A:写A口发出的起始数据MOVA1.OFEH011DX,A1.MOV1.A,A1.MOVDX.MY255_B:写Bn发出的起始数据MOV

23、A1.,7FII011DX,A1.MOV1.B.1.1.OOP1.:MOV1.,1M口的灯从中间(右八个)往右移RO1.A1.,1MOV1.A,A1.MOVDX,MY8255_A017DX11.MOVA1.,1.B;B口的灯从中间(左八个)往左移RORA1.1MOV1.B1A1.MOVDX.MY8255_BOCTDX1A1.CA1.1.DA1.1.YJMP1.OOP1.QUIT:MOVAX,ICOOH;结束程序退出INT21HDA1.1.YPROCNEAR;软件廷时子程序PUSHCXPUSHAXMOVCX10F111.DI:MOVX,OFFII:该值不能太大,否则在protoUS中若结果很慢D

24、2:DECAXJNZD21.OOPD1.POPAXPOPCXRETDA1.1.YENDPCODEENDSENDSTART(3)如要求每个灯亮的时间为IS.应当怎样性改程序?答:DAI.1.YPR()CNEAR;软件延时子程序PUSHCXPUSHAXMOVCX.OFFHDI:MOVAX1OI-FII:该值不能太大,否则在prot。US中看结果很慢D2:DECAXJNZD21.OOPD1.POPAXPOPCXRETDA1.1.YENDP依据疑时函数的计算公式,2*AXCX=1000000OOOus=Is,设置AX,CX的值即可.假如计算的结果不足18,可以写多一个循环,不过要介考三重循环的计算公式

25、,设置AX,CX的值.(4)可以按同时两个灯的移动规律显示吗?可以的话,应如何修改程序?答:可以,对AB口初始化时,先让两个灯亮,再进行移位就可以实现两个灯移动了。例如OoI1.IIII=3FH试验九可编程定时/计数器8253试验一、试验要求利用8086外接8253可编程定时/计数器,可以实现方波的产生.二、试验目的1、学习8086及8253的连接方法.2、学习8253的限制方法”3、笈收8253定时器/计数器的工作方式和编程原理三、试验电路及连线jj)11ran四、试验说明8253芯片介绍8253是一种可编程定时/计数器,有三个十六位计数器,其计数频率范用为02MHz.用+5V单电源供电.8

26、253的功能川途:(1)廷时中Ift实时时钟(2)可编程频率发生器数字单枪(3)事务计数器困难的电机限制器二进制倍版器8253的六种工作方式:方式0:计数结束中断方式I:可编理颊率发生方式2:版率发生擀(n方式3;方波频率发生器方式4:软件触发的通通信号方式5:硬件触发的选通信号五、试验程序流程图图8-28253方波发生器试验程序流程图试验代码为:CODESEGMENTASSUMECS:CODETCONOEQUOAOOOHTCON1.EQUOA002HTC0N2EQUOA004HTCONTEQU0A006HSTART:MOVDXzTCONTM0VAU16HOUTDX.A1.MOVDX,TCON

27、OMOVAX,20OUTDX.A1.JMP$CODEENDSENDSTART六、试验步骤1、参照图81设置正确的试脸电路,在Proteus中完成原理图的绘制.2、参考图8-2的流程,编写产生方波的程序。3、在PrOteUS中仿真检查验证结果。留意,dk输入端是放置一个波形发生器,,要设理他的参数,2.oUt端和C1.k端通过示波器视察波形,示波器是3.仿真起先后在debug菜单中选择示波罂视察信号七、思索题:I、8253的片选信号地址为多少?答:片选信号地址范用为OAOoOH-OAFFFH,在图中,我们设置为OAOOO2、假如修改输入频率,如何保持输出不变?怎样可以输出其他频率的方波信号呢?假

28、如输入频率为18.432KHz,输出方波信号的频率能围是多大?答:(I)修改输入频率,若要保持输出不变,要变更其计数潺的计数值(2)若要输出其他嫌率的方波,只需保持输入频率的方波不变,变更计算值即可,也满意公式工=,计数值:(3)若输入的频率为f=18.432KHz,则输出频率应为1.f*计数周期数(1-65536)3、能否及8255试验联系起来,对流水灯实现精确的定时限制呢?本试验结果假如用Ied灯的显示验证,应怎样添加ICd灯,试验结果乂如何体现?答:如图所示:通过设定输出频率,视察IQd灯亮灭的时间来体现.4、能否在本试的中验证8253的其他工作方式?应怎样修改程序?答:可以,干脆修改限制字。把代码中的“MOVA1.16H”中的16H依据限制字的格式改为其他数。5,给电子发声器件输入肯定规律的信号,就能使其发出美丽的旋律,能否用该试验让电子发声器件发声或者唱歌呢?答:可以,在电路图添加一个蜂鸣器,连接8253的输出端,通过代码限制其输出不同的频率,发出不同的调。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号