微机原理试验报告50794_第1页
微机原理试验报告50794_第2页
微机原理试验报告50794_第3页
微机原理试验报告50794_第4页
微机原理试验报告50794_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、机 原 理 实 验 报 告班级:指导老师:学号:姓名:精选资料,欢迎下载精选资料,欢迎下载实验一两个多位十进制数相加的实验一、实验目的学习数据传送和算术运算指令的用法熟悉在PC机上建立、汇编、链接、调试和运行汇编语言程序的 过程。二、实验内容将两个多位十进制数相加,要求被加数和加数均以ASCII码形式 各自顺序存放在以DATA1DATA2为首的5个内存单元中(低位在前), 结果送回DATA1处。三、程序框图精选资料,欢迎下载图3-1四、参考程序清单DATA SEGMENTDATA1 DB 33H,39H,31H,37H,34H;被加数DATA1END EQU $-1DATA2 DB 34H,3

2、5H,30H,38H,32H;加数DATA2END EQU $-1SUM DB 5 DUPDATA ENDSSTACKSEGMENTSTADB 20 DUP(?)TOP EQU LENGTH STASTACKENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACK,ES:DATASTART:MOV AX,DATAMOVDS,AXMOVAX,STACKMOVSS,AXMOVAX,TOPMOV SP,AXMOV SI,OFFSET DATA1ENDMOV DI,OFFSET DATA2ENDCALL ADDAMOV AX,4C00HINT 21HADDA PR

3、OC NEARMOVDX,SIMOVBP,DIMOVBX,05HAD1: SUBBYTE PTR SI,30HSUBBYTE PTR DI,30HDECSIDECDIDECBXJNZAD1MOVSI,DXMOV DI,BPMOVCX,05HCLCAD2: MOVAL,SIMOVBL,DIADC AL,BLAAAMOV SI,ALDECSIDECDILOOP AD2MOV SI,DXMOV DI,BPMOV BX,05HAD3: ADD BYTE PTR SI,30HADD BYTE PTR DI,30HDEC SIDEC DIDEC BXJNZ AD3RETADDA ENDPCODE ENDS

4、END START五、实验结果与分析etc:、章此««MiaG ouii« oIxorXinflr MUL.IcGl1 J< -a f-ct t1,«=:-£: ih£.11= I Mil Uj _<MJIj 1 =OFfcH<1l fi> Iwitti -W!> Km v»h n-1; n rlJ ¥irtTsis1'ri n fci r»nni' il i n'o n fr iwm戸 HA Mil -> :wifT'u rA S 1

5、G'S -twell -£ri>pme tJ_<Pfiuir-t d_vePRHM£ s AGHCX 'es*i*o 1*=客甘Ebo 工 n*o七1dj-of1Xited." S TflRT* 41553fln yvni>>n 1 n-iirtn:«- Ffww-0 W-nr-n ±r»sr Er-r-o roll HE!UE! '"EEl*l.'«*l"3i|> = xM4tiimi!j>MiA M KKC rftAHI! .|4MH

6、±a r-ocsof t <R> lH-ak.oiro AeaoendbXer- Uor-o ±on & a 00eopyt- Lu>iL <O M Lu r-iJOfiiT t: Cu 尸 gi 1VHI - flfl VH71.Ill I -bl w Ifmwmi-mu£| .t r iiwrkMFBM rnnAMF - ob«tii :圧>斗>曰 IzLs t Xngr=crwou-H-w rwi-oiiico FHII I.CFIP 1 =SCI?22 * <l;lS53fl虬冋事 k «

7、;rbfMi 1 efGi W»*r¥ i mffW DV 0 170 E 1*170 1TB-1> 2 XM-DLQFnb严 C: TX-MDOVSEjr E<laB32.c:ndL- c;z a 1dlaBug: FJRAM - EZ1Lm-0200DK-0004CK-6609DM-0004Gr-0012DP-0009GI-0004DI0004DS=116CESllSCgA:Ll£DCS=lltFIP=004&NU UPDiPL NZ NRPO NC116F:nPJ46 T8BFDnouDI .BPnX=M2MBBX =MHM4CXDX=M

8、Mtl4SP-WM12HP=WMWyK =tlMt)4D DS-ilGCES-1±5CSS-116DCS-116Fir-0O4DHU UPDIPL HZ NAPO NCHGF:004e -TBP 匪 00MOUBM,000SrtK-0200DK-00Q5CK-O0S9DM-0004ar-0012DP-0B09CI-0B04DI-0009DS=116CESllSCSSllGDCS=11&FIP=004BNU UPDlPL NZ NRPO NCii6F:nmn T8Hn43RODBYTE PTR ESI 1-30DS:RHH-4=n6RX=nznRBX =Afin5GX=00円円

9、DK=Rnp)4SP=HA12BF=fln(fl9SI=伸利04Dl=0009D8-11GCES-l±bGSS-116DCS-116F1I-O04EHU UPDIPL HZ HAPE NC116F:004E -T00030ADDBVTE PTR EDI ”盹DS:0009-02nK-0209DX000£OK-0009DK -0304Gr-0012DP-0009CI-0004DI-0009DS=116CESllCSS=116DCS=11&FIP=0bSlNU UPDlPL NZ NRPO NC1 16F:EJ»514EDECSI这次实验依次将相加数与被加数存

10、入 AL, BL,依次从低位向高 位相加,然后把结果放在内存中。六、实验体会这次实验是微机原理课的第一次实验, 主要是为了通过这次的实 验,让我们对这个软件的编程有更深的了解、知道如何运行程序。在 实验中误把COOH,写成了 COOH从中,我学到了许多课本里学不到的 东西,有些意外,有些收获。实验二排序实验一、实验目的掌握用汇编语言编写排序程序的思路和方法。二、实验内容将指定内存出开始的数据(最多为4位数)按从大到小的顺序排列。第一个数字表示数据的个数(不是要比较的数值! !)四、程序清单DATASEGMENTADDRDW 8,234,35,67,876,54,39,765,237DATAEN

11、DSSTACKSEGMENTSTADW 32 DUPTOPDW ?STACKENDSCODESEGMENTASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACKSTART:MOV AX,DATAMOV DS,AXMOV ES,AXMOV AX,STACKMOV SS,AXMOV SP,TOPMOV CX,WORD PTR ADDR0DEC CXLOOP1: MOV DI,CXMOV BX,2LOOP2: MOV AX,WORD PTR ADDRBXCMPAX,WORD PTR ADDRBX+2JGECCCXCHGAX,WORD PTR ADDRBX+2五、CODEEND

12、SENDSTART实验结果与分析G = SrlaenE >r>ais n .e moM ic u*o±2oif* t:<H> M-acl片 卫 至 e?Jl匸 h Me i-s ±orb S - tdH(:«>Liwir iulu. COCut'lb1 VIITi -1 11VAll1" a wlblL H IT-Hdn tilMOVWORD PTR ADDRBX,AXCCC:ADDBX,2LOOP LOOP2MOVCX,DILOOP LOOP1EXIT:MOVAX,4C00HINT21HT ILJII0RvLu 0

13、 m n r"- £ £2 IA « c t±i£ ffihH cI .n8H 1 -2 /£ . H3 mH 卷 N . O B J' 1 =F NIB I. 1«R T VLNULi .=也也瞠誌*43. L<>MCb JJs/'t0 -si-JL w-imsict-v F .*«><jW Wni'nUiSMr n ' S“ Esi u卫E£3i*k«ci aia-1 FIFOIi til- Lt leiFia 丄aw i1

14、MP44W1 MH ni I n 511址厨 Mil :-IMUH -4M UJllftfId 11右材 HIT 朴Vtlf.-Jcc: vnhwvunvsaHHVUn“7ynbuJ<1< =mt.r. HIEvclrbJlh:ihHHffli!. 易?】n - 亭红誥店“ fhk.v*Ffii-vaHn3“§r.f.75011 riillill丄d;l 耶pfriFtfsvllT 円nHHH'zkvHIP hL1>小E碍 n< t v f pm v . « 2 b 岳订 _ t - - H.F»iO-hMD : r W a -.

15、a .k .&矗鉄 wen.a et. u . Vi. w . Pk . Us . mu _ iJ I -uJt,& _a _ Be_w tu .u-u«iB. *9nKh pi障科車HUldCD叫唱DS «± UlP Id LZU -PVS* ± H MFH VL*tPH -F112 vE P-CP Pficu-jLidiriki1 p-aPM9hkt詢fi刊耳FIK IfOUiHBKnJ? 4F0FS FV211: IdiXlut 1J.UVUCX =EM39(3 1)3<=1*£29 K P < LKTJH f

16、?S «1 fllPG CSS 一" RF*R T I*一环 1 TfiJrtF轩丄BldV肆辭*%T 7 J般f J'站僭护UP Fid密曰 P4U IJ F » E氐E 密也0D I Id JLFMIC2 NIZ: bflfl 10 CZ VFIKUiUiUmpk c 呼俎DE =±43IFiaE£K =>>'?3£:11 MITFI E »1 FIFI Illi気tnx -MtaiHiM BM -CDll-1PS-10F0ES-JTFZ1L HFH? H>±Et hl>

17、OKUM -f liU VSS -10F0C5 -JL 0F0POPHPir-SiSaHNUH|JrMDI!tNGMN ZNA曰 g Wnr-atiCBNU U F » En» -WMWW I4M -<3DH DS =1OFU E££ =P7N:L I = R>i nn G3ItC : X.Mb4 m viS- >-WMHiR-GI?龙9EE =X IflF'M CZS =z£ MIEMTtT!TRI-HWWH DI-MWWIIMG NIZ: MA 10 C V这次实验是给我们8个数字,按从大到小的顺序排列出来,定义

18、的数字中8是一个指示数字的个数量。六、实验体会通过此次的实验,懂得了用汇编语言编写排序程序的思路和方法,知道义的数字中8是一个指示数字的个数量,不是一个数。更加 加强了我对程序的操作的熟练程度。实验三 字符串按ASCII值的查找一、实验目的1. 掌握字符串按ASCII值查找的方法。二、实验设备计算机一台。预装 Windows XP宏汇编MASM5三、实验内容编写能够实现以下要求的汇编语言程序,并上机实现。1. 对一个给定的字符串,统计其中 09的个数,并在屏幕上显 示这个字符串和09的个数(3位十进制数)。四、实验框图广'程序开始1DB定义一个字符串1将字符串的长度转换成十进制1r符串

19、按ASC:ii值查找、执行结束五、程序清单DATA SEGMENTSTRING DB ' GFDsfgfdsGDA0935J/:'KO6ASD78','$' L1 DB ?DATA ENDSSTACK SEGMENT PARA STACK 'STACK'DB 100 DUPSTACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART PROC FARBEGIN: PUSH DSMOV AX,0PUSH AXMOV AX,DATAMOV DS,AXLEA BX,STRINGMOV DL

20、,0LP2: MOV AL,BXCMP AL,30HJB LP3CMP AL,39HJA LP3INC DLLP3: CMP AL,'$'JE LP4INC BXJMP LP2LP4: MOV L1,DLLEA DX,STRINGMOV AH,9INT 21HMOV DL,0DHMOV AH,2INT 21HMOV DL,0AHMOV AH,2INT 21HMOV AL,L1MOV AH,0CALL B_DRETSTART ENDPB_D PROC ;二一一十进制转换及显示MOV CL,100DIV CLPUSH AXMOV DL,ALADD DL,30HMOV AH,2INT

21、 21HPOP AXMOV AL,AHMOV AH,0MOV CL,10DIV CLPUSH AXMOV DL,ALADD DL,30HMOV AH,2INT 21HPOP AXMOV DL,AHADD DL,30HMOV AH,2INT 21HRETB_D ENDPCODE ENDSEND BEGIN六、实验结果与分析F:1>MASM 2Microsoft (Rj Macro Assent1er Versi on 5, 00Copyright (C) Microsoft Corp 1981-1985, 19貂 All rights reserved,Object filename 2.

22、 OBJ:Source listing NUL.LET:Cross-reference NUL,CRF:50244 + 449660 Bytes synibol space free0 W也ming Errors0 Severe ErrorsF:1>LINK 2Microsoft (R) Overlay Linker Version 2、 60Copyright (C) Microsoft Corp 1983-1987. All rights reser辛日d.Run File 2. EXE:List File WIIL. MAP:Libraries .LIB:F:l>2GFDsf

23、gfdsCDA0535J/:' JKO6ASD7S007大写的英文字符AZ的ASCII码是41HH5AH,小写的英文字符az的ASCII码是61H7AH,如果一个字符的ASCII码在这两个范围内,则满足要求。七、实验体会通过此次的实验更加加强了我对 ASCII码转换的应用,以后可以 对这个问题,有更深的了解,而且我能很快的用它进行查找,很有收 获。实验四DOS输入输出功能的使用一、实验目的1. 掌握8086汇编语言程序的汇编、链接、运行的方法。2. 掌握用软中断调用DOS输入输出功能的方法。3. 掌握将二进制数转换成十进制数的编程方法。二、实验设备计算机一台。预装 Windows XP

24、宏汇编MASM5三、实验内容四、程序清单DATA SEGMENTSTRING1 DB '1234567890ABCDEFG','$'准备显示的字符串COUNT DB $-STRING1-1;上面字符串的长度DATA ENDSSTACK SEGMENT PARA STACK 'STACK'DB 100 DUP(100)STACK ENDSCODE SEGMENTSTART PROC FARASSUME CS:CODE, SS:STACK,DS:DATABEGIN: PUSH DSMOV AX,0PUSH AXMOV AX,DATAMOV DS,AX

25、LEA DX,STRING1 ; 输出字符串MOV AH,9INT 21H;输出回车和换行符,以实现另起一行MOV DL,0DH ; 输出回车命令MOV AH,2INT 21HMOV DL,0AH ;输出换行命令MOV AH,2INT 21HMOV AL,COUNT ;将字符串长度转换成3位十进制数输出MOV AH,0 ; 高 8 位补 0MOV CL,100DIV CL ;除以100获得百位数PUSH AX ; 暂存结果和余数MOV DL,ALADD DL,30H ;换成 ASCII 码MOV AH,2 ;输出字符到屏幕INT 21HPOP AX ;恢复结果和余数MOV AL,AH ;余数作

26、为被除数MOV AH,0MOV CL,10DIV CL ;除以10获得十位数PUSH AXMOV DL,ALADD DL,30HMOV AH,2INT 21HPOP AXMOV DL,AHADD DL,30HMOV AH,2INT 21HMOV DL,0DH ;输出回车命令MOV AH,2INT 21HMOV DL,0AH ;输出换行命令MOV AH,2INT 21HRETSTART ENDPCODE ENDSEND BEGIN五、实验结果及分析F:1>IASH 1Microsoft (R) Macro Assembler Version 5. 00Copyright (C) Micro

27、soft Corp 19011985, 1987. Ml rights reserved.Dbjset filename l.OBJ: Source listing NUL. LSI: Cross-reference NUL. CRF:50236 + 449652 Bytes symbol space free0 Earning Errors0 Severe firrorsF;l>LrNK 1DE irosoit i,R)l verlay Linkm二 Version :L. uiCopyright (C) Microsoft Corp 1933-1987. All rights res

28、erved.Run File LEXE: List File NUL, NAP: Libraries .LIB:F:1>11234567890ABCDEFGi J17hi>这就是二进制转为十进制的结果 六、实验体会这次实验,我基本掌握 8086汇编语言程序的汇编、链接、运行的方法。同时也学会了用软中断调用 DOS输入输出功能的方法,还有 基本的掌握将二进制数转换成十进制数的编程方法。这次实验学到了 很多,希望以后更有进步。实验五8255并行I/O 口实验一、实验要求利用8255可编程并行口芯片,实现输入/输出实验,实验中用8255PA 口作输入,PB 口作输出。二、实验目的1、了解

29、8255芯片结构及编程方法。2、了解8255输入/输出实验方法。三、预备知识8255是In tel公司生产的与In tel8080/8085 系列的MPI配套的可编程外围接口电路,简称PPI。它有A、B、C三个八位端口寄存器, 通过24位端口线与外部设备相连,基中C 口可分为上半部和下半部。这24根端口线全部为双向三态。三个端口可分二组来使用,可分别工作于三种不同的工作方式。四、实验原理图及连线1、本实验主要用到的模块:8255模块、开关量输出模块、0 1指示模块、实验译码单元等;2、PA0-PA7分别接开关量输出模块S0-S7对应的插座;3、PB0-PB7分别接0 1指示模块DO71-DO7

30、对应的插座;4、8255A的片选/CS接地址译码单元的2A0-2A7;5、数据线XD0-XD7接系统数据线区的任一插座。T?-l8255:XD0-XD7IIORTT721now 3t5AO9Als百RESET 35DODID2D3P4D5D7KDWEAOAlRE;ETCS"D 1 2 3 4 5 6 7 AAAAAA FpppppppSISO4FAOP7:lU: JPA1 2U7:_FA2 IZF"U7 匸P*43? U7.J FA5 1 2 3 4 3 s 7 H- B OD E- B B B b ppppppppprppc代pcpcpcpc19 U7: PD121 U7

31、:f PB323 U7:l rEd23 U7:l LPB524 U7;1 PB625 U7:1.PB714 U?:1 PCO15 U7!J PC1k rca17 IT7'1ZPC313 U7:1_PC412 U?;1 PC511 U7;. PC610 U?:1 PC7IR U7:-PRD3斗567«B71L.0712023£图3-3五、实验内容将实验的线路连接好后,编程,将 8255的A 口作为输入,输入 信号由8个逻辑电平开关提供,B口作为输出,其内容由发光二极管 来显示。六、程序清单L8255_CMD EQU 2A3HL8255_PA EQU 2A0HL8255

32、_PB EQU 2A1HL8255_PC EQU 2A2HCODE SEGMENTASSUME CS:CODE,DS:CODEBEGIN:MOV CX,0FFHAA:LOOP AAMOV DX丄8255_CMDMOV AL,9CH;10011000OUT DX,ALNOPNOPNOPNOPNOPBB:MOV DX, L8255_PAIN AL,DXXOR AL,0FFHMOV DX,L8255_PBOUT DX,ALJMP BBCODE ENDSEND BEGIN七、程序框图图3-4八、实验步骤1、参照图中的内容连好线;2、运行上位机软件,装载并运行相应程序即可(联机请参考程 序 8255.a

33、sm)。注意:同学们自己编写程序时,8255的/CS连线可以接地址译码 单元的其他信号,其它连线相同。如果用的端口与本实验不一样,也 可以改变10 口的连线。九、仪器配置Z 15MicInt12BB微机原理及接口实验箱 一台。十、实验现象当读到某个开关处于高电平时,对应的发光二极管就会亮。十一、思考题根据程序列出实验中8255的各个端口的地址,如果 8255的/CS改接译码信号280H,其它信号不变,那么对应的端口地址又是多少 ?答:8255 命令-2A3HPA-2A0H PB-2A1H PC-2A2H;8255的/CS改接译码信号280H后对应的端口地址是8255命令-283HPA-280H

34、 PB-281H PC-282H十二、实验结果与分析按照实验指导连接电路后,将所有的开关都置于高电平,会发现所有的灯都亮了。然后所有的开关置于低电平,所有的灯都熄了。十三、实验体会本次实验是按照老师要求和讲解做的,刚开始时,按照老师说的 步骤,将线路连接好后,通过众友连接,发现连接不上电路,最后换 了一个串口线,最终成功的连上了,通过了编译但又在运行的时候出 现了问题,和其他人做了比较,依旧没有发现问题,最后经过自己耐 心的检查,发现有根线接错了,改正之后重新编译运行,最后所有的 LED灯亮了。此次实验也让我收获颇多,做实验的时候我们应该仔细 认真。实验六 ADC0809A/D转换实验一、实验

35、目的1、加深理解逐次逼近法模数转换器的特征和工作原理;2、掌握A/D转换芯片与8088/86的接口方法;3、了解A/D芯片ADC0809专换性能及编程方法。二、预备知识A/D转换器大致有三类:一是双积分A/D转换器,优点是精度高, 抗干扰性好;价格便宜,但速度慢;二是逐次逼近A/D转换器,精度, 速度,价格适中;三是并行 A/D转换器,速度快,价格也昂贵。实验用的ADC0809!第二类,是八位A/D转换器。每采集一次一 般需100us。本程序是用延时查询方式读入 A/D转换结果,也可以用 中断方式读入结果,在中断方式下,A/D转换结束后会自动产生 EOC 信号,做为转换完成的信号。三、实验原理说明及连线1、本实验的位置在实验箱的“ ADC0809模块”2、本实验用芯片ADC080啲片选地址为2B8H实验箱上已固定 好,不需要再连线;3、将该实验模块的CLOCI和“信号源模块”的1MHZ言号连接起 来;4、用排线将“系统数据总线输出单元”中的任意一组数据线和本实验模块的“ ADC0809 XD0-XD

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论