微機實驗程序_第1頁
微機實驗程序_第2頁
微機實驗程序_第3頁
微機實驗程序_第4頁
微機實驗程序_第5頁
已閱讀5頁,還剩9頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、實驗2 EDIT,MASM,LINK的使用實驗內(nèi)容:在內(nèi)存X-NUM和Y-NUM單元存有42和-43,利用匯編語言程序編程設(shè)計計算 這兩數(shù)字和,結(jié)果放入S-NUM單元DATA SEGMENTX DB 42Y DB -43S DB ?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV AL,XADD AL,YMOV S,ALMOV AH,4CHINT 21HCODE ENDS實驗丁船循環(huán)程序設(shè)標(biāo)簽:教育實驗3循環(huán)程序設(shè)計實驗內(nèi)容:1.現(xiàn)有數(shù)組 X,Y. X=32,-43,76,95,-1;Y=-78,1

2、27,-128,-125,88.計算這兩個數(shù)組之和,結(jié)果送到另一組數(shù),即 S(i)=X(i)+Y(i)DATA SEGMENT.X DB 32,-43,76,95,-1.Y DB -78,127,-128,-125,88.COUNT EQU $-YS DB COUNT DUP(?)DATA ENDSCODE SEGMENT .ASSUME CS:CODE,DS:DATASTART:MOV AX,DATA .MOV DS,AX .MOV SI,OFFSET X.MOV DI,OFFSET YI L1:MOV AL,SI .MOV AH,DI .ADD AL,AH.MOV SSI,AL.INC S

3、I.INC DI.LOOPL1.MOV AH,4CH.INT 21HCODE ENDS.END START實驗內(nèi)容:2.現(xiàn)有兩個多位十進制數(shù):X=1357902468, Y=5790123467計算X+Y之和(BCD碼加法),結(jié)果送到乙DATA SEGMENT:DB 68H,24H,90H,57H,13HDB 67H,34H,12H,90H,57H. Y.COUNT EQU $-Y Z DB 6 DUP(?)DATA ENDSCODE SEGMENT .ASSUME CS:CODE,DS:DATA START:MOV AX,DATA.MOV DS,AX.MOV CX,COUNT.MOV SI,

4、OFFSET X.MOV DI,OFFSET Y.L1:MOV AL,SI.MOV AH,DI.ADC AL,AH.DAA.MOV ZSI,AL.INC SI.LOOPL1.MOV AH,4CHCODE ENDSND START實驗4子程序調(diào)用編程設(shè)計實驗內(nèi)容:現(xiàn)有數(shù)組X=32, -43,76,95, -1, -78,127, -128, -125,88編程按遞增順序排序,排序后的數(shù)據(jù)復(fù)制到附加段內(nèi)。1.無子程序結(jié)構(gòu)。DATA SEGMENTX DB 32,-43,76,95,-1,-78,127,-128,-125,88COUNT EQU $-XDATA ENDSEXTRA SEGMENTY

5、 DB COUNT DUP(?)EXTRA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,ES:EXTRASTART:MOV AX,DATAMOV DS,AXMOV AX,EXTRAMOV ES,AXMOV CX,COUNTMOV SI,0DEC CXL1:MOV DX,CXL2:MOV AL,XSICMP AL,XSI+1JL L3XCHG AL,XSI+1MOV XSI,ALL3:INC SILOOPL2MOV CX,DXMOV SI,0LOOPL1MOV CX,COUNTL4:MOV AL,XSIMOV YSI,ALINC SILOOPL4MOV AH,4

6、CHINT 21HCODE ENDSEND START2.子程序調(diào)用結(jié)構(gòu)DATA SEGMENT.X DB 32,-43,76,95,-1,-78,127,-128,-125,88COUNT EQU $-XDATA ENDSEXTRA SEGMENTY DB COUNT DUP(?)EXTRA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,ES:EXTRASTART:MOV AX,DATAMOV DS,AXMOV AX,EXTRAMOV ES,AXMOV CX,COUNTMOV SI,0CALL ORDERMOV CX,COUNTNEXT:MOV AL,XSIM

7、OV YSI,ALINC SILOOP NEXTMOV AH,4CHORDER PROC NEARL1:MOV DX,CXL2:MOV AL,XSICMP AL,XSI+1JL L3XCHG AL,XSI+1MOV XSI,ALL3:INC SILOOPL2MOV CX,DXMOV SI,0LOOPL1RETORDER ENDPCODE ENDSEND START實驗5 DOS功能調(diào)用DATA SEGMENTINBUF1 DB ?INBUF2 DB 32DB ?DB 32 DUP(?)OUTBUF1 DB 38HOUTBUF2 DB ABCDE,0DH,0AH,$DATA ENDSCODE S

8、EGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV SI,OFFSET INBUF1CALL L1MOV SI,ALCALL L2CALL L3CALL L4MOV AH,4CHINT 21HL1 PROC NEARMOV AH,01HINT 21HRETL1 ENDPL2 PROC NEARMOV DL,OUTBUF1MOV AH,02HINT 21HRETL2ENDPL3 PROC NEARMOV DX,OFFSET OUTBUF2MOV AH,09HINT 21HRETL3ENDPL4 PROC NEARMOV DX,OFF

9、SET INBUF2MOV AH,0AHINT 21HRETL4ENDPCODE ENDSEND START實驗9接口實驗預(yù)備知識DATA SEGMENTOUTBUF DB 9,8,7,6,5,4,3,2,1,0COUNT EQU $-OUTBUFDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV SI,OFFSET OUTBUFMOV DI,COUNTNEXT:MOV DL,SIMOV AH,02HINT 21HCALL DELAYINC SIDEC DIJNZ NEXTMOV AH,4CHINT

10、21HDELAY PROC NEARPUSH CXMOV BX,299HFOR1:MOV CX,0FFFFHFOR2:LOOP FOR2DEC BXJNZ FOR1POP CXRETDELAY ENDPCODE ENDSEND START實驗10簡單的輸出接口實驗實驗內(nèi)容:利用74LS273設(shè)計一個接口電路,使8個LED循環(huán)順序點亮, 中間間隔1秒,循環(huán)3次,要求高電平時LED點亮。CODE SEGMENTASSUME CS:CODESTART:MOV SI,3L1:MOV AL,01HMOV DI,8L2:ROL AL,1MOV DX,280HOUT DX,ALCALL DELAYDEC D

11、IJNZ L2DEC SIJNZ L1MOV AH,4CHINT 21HDELAY PROC NEARPUSH CXMOV BX,299HFOR1:MOV CX,0FFFFHFOR2:LOOP FOR2DEC BXJNZ FOR1POP CXRETDELAY ENDPCODE ENDSEND START實驗11簡單的輸入接口實驗實驗內(nèi)容:設(shè)計一個接口電路,當(dāng)開關(guān)來回搬動1次后,在屏幕上輸出1,再來回搬動1 次,輸出2,共搬動5次。利用硬件消抖。CODE SEGMENTASSUME CS:CODESTART:MOV DL,31HMOV CX,5L1:PUSH DXMOV DX,280H IN A

12、L,DX AND AL,01H MOV AH,AL L2:IN AL,DXAND AL,01H CMP AH,AL JZ L2L3:IN AL,DX AND AL,01H CMP AH,AL JNZ L3 POP DX MOV AH,02H INT 21H INC DL LOOPL1MOV AH,4CH INT 21H CODE ENDSEND START實驗12數(shù)碼管顯示實驗實驗內(nèi)容:使2個七段顯示管分別顯示01,23,45,67,89, 每兩個字符保持2秒鐘。DATA SEGMENTTABLE DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H DB 7FH,6FH,77

13、H,7CH,39H,5EH,79H,71HX DB 01H,23H,45H,67H,89HCOUNT EQU $-XDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV CX,COUNTMOV SI,OFFSET XMOV BX,OFFSET TABLEMOV DX,280HL1:MOV DI,200L2:MOV AL,SIAND AL,0F0HROR AL,1 ROR AL,1 ROR AL,1 ROR AL,1 XLAT AND AL,7FH OUT DX,AL CALL DELAY MOV AL,

14、SI AND AL,0FH XLAT OR AL,80H OUT DX,AL CALL DELAY DEC DI JNZ L2 INC SI LOOPL1 MOV AH,4CH INT 21HDELAY PROC NEAR PUSH CX PUSH BX MOV BX,200FOR1:MOV CX,0FFFFH FOR2:LOOP FOR2 DEC BX JNZ FOR1 POP BX POP CX RETDELAY ENDP CODE ENDS END START實驗13可編程并行接口 8255A芯片實驗實驗內(nèi)容:由8255A的A接口輸出數(shù)據(jù),驅(qū)動4個LED,使其順序顯示0-F的二進制狀態(tài),

15、 每個狀態(tài)保持1秒鐘。CODE SEGMENTASSUME CS:CODESTART:MOV DX,283HMOV AL,80HOUT DX,ALMOV CX,16MOV AL,00HL1:MOV DX,280HOUT DX,ALCALL DELAYINC ALLOOPL1MOV AH,4CHINT 21HDELAY PROC NEARPUSH CXMOV BX,299HFOR1:MOV CX,0FFFFHFOR2:LOOP FOR2DEC BXJNZ FOR1POP CXRETDELAY ENDPCODE ENDSEND START實驗14 8253編程測試實驗實驗內(nèi)容:8253方式0測試,用消抖電路產(chǎn)生的脈沖作為CLK0輸入信號,OUT0接LED。運行程序5秒將計數(shù)器的顯示在屏幕上,分析讀取 的計數(shù)常數(shù)與CLK0信號的關(guān)系。CODE SEGMENTASSUME CS:CODESTART:MOV AL,11HMOV DX,283HOUT DX,ALMOV AL,03HMOV DX,280HOUT DX,ALCALL DELAYMOV AL,00HMOV DX,283HOUT DX,ALMOV DX,280HIN AL,DXMOV

溫馨提示

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

評論

0/150

提交評論