微機原理試驗報告50794_第1頁
微機原理試驗報告50794_第2頁
微機原理試驗報告50794_第3頁
微機原理試驗報告50794_第4頁
微機原理試驗報告50794_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、機 原 理 實 驗 報 告班級:指導老師:學號:姓名:精選資料,歡迎下載精選資料,歡迎下載實驗一兩個多位十進制數(shù)相加的實驗一、實驗目的學習數(shù)據傳送和算術運算指令的用法熟悉在PC機上建立、匯編、鏈接、調試和運行匯編語言程序的 過程。二、實驗內容將兩個多位十進制數(shù)相加,要求被加數(shù)和加數(shù)均以ASCII碼形式 各自順序存放在以DATA1DATA2為首的5個內存單元中(低位在前), 結果送回DATA1處。三、程序框圖精選資料,歡迎下載圖3-1四、參考程序清單DATA SEGMENTDATA1 DB 33H,39H,31H,37H,34H;被加數(shù)DATA1END EQU $-1DATA2 DB 34H,3

2、5H,30H,38H,32H;加數(shù)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這次實驗依次將相加數(shù)與被加數(shù)存

10、入 AL, BL,依次從低位向高 位相加,然后把結果放在內存中。六、實驗體會這次實驗是微機原理課的第一次實驗, 主要是為了通過這次的實 驗,讓我們對這個軟件的編程有更深的了解、知道如何運行程序。在 實驗中誤把COOH,寫成了 COOH從中,我學到了許多課本里學不到的 東西,有些意外,有些收獲。實驗二排序實驗一、實驗目的掌握用匯編語言編寫排序程序的思路和方法。二、實驗內容將指定內存出開始的數(shù)據(最多為4位數(shù))按從大到小的順序排列。第一個數(shù)字表示數(shù)據的個數(shù)(不是要比較的數(shù)值! !)四、程序清單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片 衛(wèi) 至 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衛(wèi)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*一環(huán) 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個數(shù)字,按從大到小的順序排列出來,定義

18、的數(shù)字中8是一個指示數(shù)字的個數(shù)量。六、實驗體會通過此次的實驗,懂得了用匯編語言編寫排序程序的思路和方法,知道義的數(shù)字中8是一個指示數(shù)字的個數(shù)量,不是一個數(shù)。更加 加強了我對程序的操作的熟練程度。實驗三 字符串按ASCII值的查找一、實驗目的1. 掌握字符串按ASCII值查找的方法。二、實驗設備計算機一臺。預裝 Windows XP宏匯編MASM5三、實驗內容編寫能夠實現(xiàn)以下要求的匯編語言程序,并上機實現(xiàn)。1. 對一個給定的字符串,統(tǒng)計其中 09的個數(shù),并在屏幕上顯 示這個字符串和09的個數(shù)(3位十進制數(shù))。四、實驗框圖廣'程序開始1DB定義一個字符串1將字符串的長度轉換成十進制1r符串

19、按ASC:ii值查找、執(zhí)行結束五、程序清單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. 掌握將二進制數(shù)轉換成十進制數(shù)的編程方法。二、實驗設備計算機一臺。預裝 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;輸出回車和換行符,以實現(xiàn)另起一行MOV DL,0DH ; 輸出回車命令MOV AH,2INT 21HMOV DL,0AH ;輸出換行命令MOV AH,2INT 21HMOV AL,COUNT ;將字符串長度轉換成3位十進制數(shù)輸出MOV AH,0 ; 高 8 位補 0MOV CL,100DIV CL ;除以100獲得百位數(shù)PUSH AX ; 暫存結果和余數(shù)MOV DL,ALADD DL,30H ;換成 ASCII 碼MOV AH,2 ;輸出字符到屏幕INT 21HPOP AX ;恢復結果和余數(shù)MOV AL,AH ;余數(shù)作

26、為被除數(shù)MOV AH,0MOV CL,10DIV CL ;除以10獲得十位數(shù)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輸入輸出功能的方法,還有 基本的掌握將二進制數(shù)轉換成十進制數(shù)的編程方法。這次實驗學到了 很多,希望以后更有進步。實驗五8255并行I/O 口實驗一、實驗要求利用8255可編程并行口芯片,實現(xiàn)輸入/輸出實驗,實驗中用8255PA 口作輸入,PB 口作輸出。二、實驗目的1、了解

29、8255芯片結構及編程方法。2、了解8255輸入/輸出實驗方法。三、預備知識8255是In tel公司生產的與In tel8080/8085 系列的MPI配套的可編程外圍接口電路,簡稱PPI。它有A、B、C三個八位端口寄存器, 通過24位端口線與外部設備相連,基中C 口可分為上半部和下半部。這24根端口線全部為雙向三態(tài)。三個端口可分二組來使用,可分別工作于三種不同的工作方式。四、實驗原理圖及連線1、本實驗主要用到的模塊:8255模塊、開關量輸出模塊、0 1指示模塊、實驗譯碼單元等;2、PA0-PA7分別接開關量輸出模塊S0-S7對應的插座;3、PB0-PB7分別接0 1指示模塊DO71-DO7

30、對應的插座;4、8255A的片選/CS接地址譯碼單元的2A0-2A7;5、數(shù)據線XD0-XD7接系統(tǒng)數(shù)據線區(qū)的任一插座。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口作為輸出,其內容由發(fā)光二極管 來顯示。六、程序清單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、運行上位機軟件,裝載并運行相應程序即可(聯(lián)機請參考程 序 8255.a

33、sm)。注意:同學們自己編寫程序時,8255的/CS連線可以接地址譯碼 單元的其他信號,其它連線相同。如果用的端口與本實驗不一樣,也 可以改變10 口的連線。九、儀器配置Z 15MicInt12BB微機原理及接口實驗箱 一臺。十、實驗現(xiàn)象當讀到某個開關處于高電平時,對應的發(fā)光二極管就會亮。十一、思考題根據程序列出實驗中8255的各個端口的地址,如果 8255的/CS改接譯碼信號280H,其它信號不變,那么對應的端口地址又是多少 ?答:8255 命令-2A3HPA-2A0H PB-2A1H PC-2A2H;8255的/CS改接譯碼信號280H后對應的端口地址是8255命令-283HPA-280H

34、 PB-281H PC-282H十二、實驗結果與分析按照實驗指導連接電路后,將所有的開關都置于高電平,會發(fā)現(xiàn)所有的燈都亮了。然后所有的開關置于低電平,所有的燈都熄了。十三、實驗體會本次實驗是按照老師要求和講解做的,剛開始時,按照老師說的 步驟,將線路連接好后,通過眾友連接,發(fā)現(xiàn)連接不上電路,最后換 了一個串口線,最終成功的連上了,通過了編譯但又在運行的時候出 現(xiàn)了問題,和其他人做了比較,依舊沒有發(fā)現(xiàn)問題,最后經過自己耐 心的檢查,發(fā)現(xiàn)有根線接錯了,改正之后重新編譯運行,最后所有的 LED燈亮了。此次實驗也讓我收獲頗多,做實驗的時候我們應該仔細 認真。實驗六 ADC0809A/D轉換實驗一、實驗

35、目的1、加深理解逐次逼近法模數(shù)轉換器的特征和工作原理;2、掌握A/D轉換芯片與8088/86的接口方法;3、了解A/D芯片ADC0809專換性能及編程方法。二、預備知識A/D轉換器大致有三類:一是雙積分A/D轉換器,優(yōu)點是精度高, 抗干擾性好;價格便宜,但速度慢;二是逐次逼近A/D轉換器,精度, 速度,價格適中;三是并行 A/D轉換器,速度快,價格也昂貴。實驗用的ADC0809!第二類,是八位A/D轉換器。每采集一次一 般需100us。本程序是用延時查詢方式讀入 A/D轉換結果,也可以用 中斷方式讀入結果,在中斷方式下,A/D轉換結束后會自動產生 EOC 信號,做為轉換完成的信號。三、實驗原理說明及連線1、本實驗的位置在實驗箱的“ ADC0809模塊”2、本實驗用芯片ADC080啲片選地址為2B8H實驗箱上已固定 好,不需要再連線;3、將該實驗模塊的CLOCI和“信號源模塊”的1MHZ言號連接起 來;4、用排線將“系統(tǒng)數(shù)據總線輸出單元”中的任意一組數(shù)據線和本實驗模塊的“ ADC0809 XD0-XD

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論