2023年語法練習(xí)和程序設(shè)計微機實驗報告_第1頁
2023年語法練習(xí)和程序設(shè)計微機實驗報告_第2頁
2023年語法練習(xí)和程序設(shè)計微機實驗報告_第3頁
2023年語法練習(xí)和程序設(shè)計微機實驗報告_第4頁
2023年語法練習(xí)和程序設(shè)計微機實驗報告_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

實驗報告(2023/2023學(xué)年第一學(xué)期)課程名稱微型計算機原理與接口技術(shù)實驗名稱語法練習(xí)和程序設(shè)計實驗時間2023年10月11日指導(dǎo)單位計算機學(xué)院指導(dǎo)教師陳云芳學(xué)生姓名郁濤班級學(xué)號m10006025學(xué)院(系)通達(dá)學(xué)院專業(yè)光電信息工程實驗報告實驗名稱語法練習(xí)和程序設(shè)計指導(dǎo)教師陳云芳實驗類型驗證實驗學(xué)時2實驗時間2023.10.11實驗?zāi)康暮鸵?guī)定進(jìn)一步學(xué)習(xí)匯編語言源程序的編輯、匯編、目的文獻(xiàn)的鏈接和可執(zhí)行文獻(xiàn)的執(zhí)行全過程。掌握匯編軟件、TASM、TLINK、和TD的使用方法。3、掌握匯編語言的語法規(guī)則。4、掌握循環(huán)程序的編寫以及結(jié)束循環(huán)的方法。二、實驗環(huán)境(實驗設(shè)備)TASM匯編開發(fā)工具包,windows7.三、實驗原理及內(nèi)容【實驗1.3.1】排除語法錯誤。規(guī)定通過比較法完畢8位二進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù)送屏幕顯示功能的匯編語言源程序。但有很多語法錯誤,規(guī)定按照原樣對源程序進(jìn)行編輯,匯編后,根據(jù)TASM給出的錯誤信息對源程序進(jìn)行修改,直到?jīng)]有語法錯誤為止,然后進(jìn)行鏈接,并執(zhí)行相應(yīng)的可執(zhí)行文獻(xiàn)。對的的執(zhí)行結(jié)果是在屏幕上顯示:25+9=34。源程序:.486?DATASEGMENTUSE16?SUMDB?,?,

MESGDB'25+9='?DB0,0?N1DB9,F0H?N2DW25?DATAENDS?CODESEGMENTUSE16

ASSUMECS:CODE,DS:DATA?BEG:MOVAX,DATA

MOVDS,AX?MOVBX,OFFSETSUM?MOVAH,N1?MOVAL,N2

ADDAH,AL?MOV[BX],AH

CALLCHANG?MOVAH,9?MOVDX,OFFSETMESG?INT21H

MOVAH,4CH

INT21H?CHANG:PROC

LAST:CMP[BX],10

JCNEXT

SUB[BX],10

INC[BX+7]

JMPLAST

NEXT:ADD[BX+8],SUM?ADDBYTEPTR[BX+7],30H

ADDBYTEPTR[BX+8],30H?RET?CHANG:ENDP?CODEENDS

ENDBEG用TASM編譯后,提醒出現(xiàn)5處錯誤。通過多次修改以后代碼如下.486DATASEGMENTUSE16SUMDB?,?MESGDB'25+9='DB0,0,'$'N1DB9N2DB25DATAENDSCODESEGMENTUSE16ASSUMECS:CODE,DS:DATABEG:MOVAX,DATAMOVDS,AXMOVBX,OFFSETSUMMOVAH,N1MOVAL,N2ADDAH,ALMOV[BX],AHCALLCHANGMOVAH,9MOVDX,OFFSETMESGINT21HMOVAH,4CHINT21HCHANGPROCLAST:CMPBYTEPTR[BX],10JCNEXTSUBBYTEPTR[BX],10INCBYTEPTR[BX+7]MOVAH,BYTEPTR[BX]JMPLASTNEXT:ADDBYTEPTR[BX+8],AHADDBYTEPTR[BX+7],30HADDBYTEPTR[BX+8],30HRETCHANGENDPCODEENDSENDBEG修改以后用tasm編譯,如下再用TLINK鏈接如下最后運營如下2、實驗【2.3.4】從數(shù)據(jù)段NUM單元開始存有9個有符號數(shù),并編寫一個程序?qū)崿F(xiàn):找出最小值存放到數(shù)據(jù)段MIN單元,并將負(fù)數(shù)的個數(shù)以十進(jìn)制的形式顯示在屏幕上。編寫多次修改后代碼如下:.486DATASEGMENTUSE16NUMDB4,5,-6,-37,2,-1,8,-15,1MINDB?ABDB'0'DATAENDSCODESEGMENTUSE16ASSUMECS:CODE,DS:DATABEG:MOVAX,DATAMOVDS,AXMOVBX,OFFSETNUMMOVCH,0MOVCL,9AGAIN:CMPBYTEPTR[BX],0JGNEXT1INCABCMPBYTEPTR[BX],CHJGNEXT1MOVCH,BYTEPTR[BX]NEXT1:INCBYTEPTRBXDECCLJNEAGAINMOVMIN,CHMOVAH,2MOVDL,ABINT21HMOVAH,4CHINT21HCODEENDSENDBEG編譯鏈接運營后,結(jié)果如下:三、實驗原理及內(nèi)容【實驗1.3.1】排除語法錯誤。規(guī)定通過比較法完畢8位二進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù)送屏幕顯示功能的匯編語言源程序。但有很多語法錯誤,規(guī)定按照原樣對源程序進(jìn)行編輯,匯編后,根據(jù)TASM給出的錯誤信息對源程序進(jìn)行修改,直到?jīng)]有語法錯誤為止,然后進(jìn)行鏈接,并執(zhí)行相應(yīng)的可執(zhí)行文獻(xiàn)。對的的執(zhí)行結(jié)果是在屏幕上顯示:25+9=34。源程序:.486?DATASEGMENTUSE16?SUMDB?,?,

MESGDB'25+9='?DB0,0

N1DB9,F0H?N2DW25

DATAENDS

CODESEGMENTUSE16

ASSUMECS:CODE,DS:DATA

BEG:MOVAX,DATA

MOVDS,AX?MOVBX,OFFSETSUM?MOVAH,N1

MOVAL,N2

ADDAH,AL?MOV[BX],AH

CALLCHANG?MOVAH,9

MOVDX,OFFSETMESG?INT21H

MOVAH,4CH?INT21H

CHANG:PROC

LAST:CMP[BX],10?JCNEXT

SUB[BX],10?INC[BX+7]?JMPLAST

NEXT:ADD[BX+8],SUM?ADDBYTEPTR[BX+7],30H?ADDBYTEPTR[BX+8],30H?RET

CHANG:ENDP

CODEENDS

ENDBEG用TASM編譯后,提醒出現(xiàn)5處錯誤。通過多次修改以后代碼如下.486DATASEGMENTUSE16SUMDB?,?MESGDB'25+9='DB0,0,'$'N1DB9N2DB25DATAENDSCODESEGMENTUSE16ASSUMECS:CODE,DS:DATABEG:MOVAX,DATAMOVDS,AXMOVBX,OFFSETSUMMOVAH,N1MOVAL,N2ADDAH,ALMOV[BX],AHCALLCHANGMOVAH,9MOVDX,OFFSETMESGINT21HMOVAH,4CHINT21HCHANGPROCLAST:CMPBYTEPTR[BX],10JCNEXTSUBBYTEPTR[BX],10INCBYTEPTR[BX+7]MOVAH,BYTEPTR[BX]JMPLASTNEXT:ADDBYTEPTR[BX+8],AHADDBYTEPTR[BX+7],30HADDBYTEPTR[BX+8],30HRETCHANGENDPCODEENDSENDBEG修改以后用tasm編譯,如下再用TLINK鏈接如下最后運營如下2、實驗【2.3.4】從數(shù)據(jù)段NUM單元開始存有9個有符號數(shù),并編寫一個程序?qū)崿F(xiàn):找出最小值存放到數(shù)據(jù)段MIN單元,并將負(fù)數(shù)的個數(shù)以十進(jìn)制的形式顯示在屏幕上。編寫多次修改后代碼如下:.486DATASEGMENTUSE16NUMDB4,5,-6,-37,2,-1,8,-15,1MINDB?ABDB'0'DATAENDSCODESEGMENTUSE16ASSUMECS:CODE,DS:DATABEG:MOVAX,DATAMOVDS,AXMOVBX,OFFSETNUMMOVCH,0MOVCL,9AGAIN:CMPBYTEPTR[BX],0JGNEXT1INCABCMPBYTEPTR[BX],CHJGNEXT1MOVCH,BYTEPTR[BX]NEXT1:INCBYTEPTRBXDECCLJNEAGAINMOVMIN,CHMOVAH,2MOVDL,ABINT21HMOVAH,4CHINT21HCODEENDSENDBEG編譯鏈接運營后,結(jié)果如下:四、實驗小結(jié)(涉及問題和解決方法、心得體會、意見與建議等)1讓我們熟悉了匯編語言編寫過程,從編輯到編譯再到鏈接最后到運營的整個過程。2了解了如何根據(jù)tasm編譯時提醒的錯誤進(jìn)行針對性的修改。3剛開始由于沒有注意標(biāo)號后面應(yīng)加冒號“:“說明這一細(xì)節(jié),用tasm編譯時一直提醒犯錯,但又不知道錯在哪里。4使用tasm匯編工具匯編時,修改錯誤不

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論