版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
學(xué)號(hào):0740303104姓名:雷鳳
綜合程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告一、實(shí)驗(yàn)?zāi)康模?、訓(xùn)練常用程序的編程技巧,如數(shù)值計(jì)算、代碼轉(zhuǎn)換等。2、熟悉和掌握中斷調(diào)用的使用方法3、熟悉串操作指令的功能與應(yīng)用,掌握其使用方法;學(xué)會(huì)編寫(xiě)常用的字符串處理程序4、復(fù)習(xí)鞏固文件的建立、匯編、鏈接,以及靜態(tài)、動(dòng)態(tài)調(diào)試的全部過(guò)程,熟練掌握運(yùn)用調(diào)試工具進(jìn)行排除和差錯(cuò)的方法,進(jìn)一步提高調(diào)試程序的能力。5、上機(jī)前要求寫(xiě)好被調(diào)試程序的程序文本,并進(jìn)行靜態(tài)調(diào)試,然后擬定好調(diào)試計(jì)劃和上機(jī)操作步驟。二、實(shí)驗(yàn)要求:1、具體了解和掌握分支,循環(huán),子程序,輸入輸出的使用和在使用時(shí)應(yīng)注意的問(wèn)題2、學(xué)習(xí)設(shè)計(jì)綜合性程序的的一般方法。三、實(shí)驗(yàn)內(nèi)容1、實(shí)驗(yàn)任務(wù)編寫(xiě)兩個(gè)雙字節(jié)無(wú)符號(hào)十進(jìn)制的加法程序。要求1.兩個(gè)加數(shù)在程序運(yùn)行時(shí)鍵盤(pán)上輸入。檢查鍵入的十進(jìn)制數(shù)是否正確?錯(cuò)誤要報(bào)錯(cuò)在屏幕上輸出兩個(gè)數(shù)的和。輸入和結(jié)果前應(yīng)該有提示信息2、實(shí)驗(yàn)的原理要顯示提示信息,調(diào)用9號(hào)功能鍵。從鍵盤(pán)上輸入一個(gè)十進(jìn)制數(shù)后,要分別調(diào)用GETNUM和SHOWNUM倆個(gè)子程序,進(jìn)而從屏幕上輸出一個(gè)數(shù),當(dāng)從屏幕上顯示出倆個(gè)數(shù)后,將倆數(shù)所在的寄存器進(jìn)棧,相加,再次調(diào)用SHOWNUM子程序,在屏幕上輸出相加結(jié)果。3、程序設(shè)計(jì)流程圖
調(diào)用GETNUM得到一個(gè)數(shù)V四、實(shí)驗(yàn)步驟1、編輯(紀(jì)事本)DATASSEGMENTCLUE1DB0AH,0DHDB'INPUTANUM:$CLUE2DB0AH,0DHDB'INPUTANUM:$RESULTDB0AH,0DHDB'THESESULTIS;JIEGUODB?;此處輸入數(shù)據(jù)段代碼DATASENDSSTACKSSEGMENT;此處輸入堆棧段代碼STACKSENDSCODESSEGMENTASSUMECS:CODES,DS:DATAS,SS:STACKS
MAINPROCFAR ;主程序PUSHDSSUBAX,AXPUSHAXMOVAX,DATASMOVDS,AX;MOVAX,STACKMOVSS,AX;START:MOVAX,DATASMOVDS,AXLEADX,CLUE1;顯示第一條提示信息MOVAH,9INT21HCALLGETNUM;調(diào)用子程序,得到一個(gè)數(shù)PUSHAX;保護(hù)現(xiàn)場(chǎng);CALLSHOWNUM;調(diào)用子程序,從屏幕上輸出一個(gè)數(shù)LEADX,CLUE2;顯示第二條提示信息MOVAH,9INT21HCALLGETNUM;調(diào)用子程序,得到一個(gè)數(shù);MOVBX,AX;將AX的數(shù)送給BXPUSHAX;保護(hù)現(xiàn)場(chǎng);CALLSHOWNUM;調(diào)用子程序,從屏幕上輸出一個(gè)數(shù)LEADX,RESULT;顯示結(jié)果MOVAH,9INT21HPOPAX;將人乂和BX彈棧POPBXADDAX,BX;倆數(shù)相加;ADDAL,30H;ConvertnumbertoASCIIcharacter;M;OVDL,AL;MOVAH,02H;INT21H;MOVAL,[BX];相加的結(jié)果送給AL;MOVJIEGUO,AL;結(jié)果存入JIEGUO單元;LEADX,JIEGUO;顯示輸出結(jié)果;MOVAH,9;INT21H;CALLGETNUM;PUSHAXCALLSHOWNUM
;POPAXRETMAINENDPGETNUMPROCPUSHPUSHBXCX;Savethecontentsofallregisters;exceptforAX,whichwillcontainthePUSHDX;numberwhichwasreadMOVBX,0H;ZerotheBXregisterNEXTDIGIT:MOVAH,1H;DOSinputcharacterfunction#1hexINT21H;GetacharacterCMPAL,'0';Ifthecharacterislessthan0,thenJLDONE;wehaveallthenumberandareDoneCMPAL,'9';Ifthecharacterismorethan9,thenJGDONE;wehaveallthenumberandareDoneSUBAL,30H;ConvertASCIItointegervalueXORAH,AH;ZerothehighbyteofAXPUSHAX;SavethedigitonthestackMOVAX,10D;Place10decimalinAXtomultiplybyMULBX;Multiplythenumberby10MOVBX,AX;GetnumberfromAXandputinBXPOPAX;GetthedigitbackfromthestackADDBX,AX;AddthedigittothenumberJMPNEXTDIGIT;GetthenextdigitDONE:MOVAX,BX;ReturntheNUMBERinAXregisterPOPDX;RestoretheregistersinreverseorderPOPCXJPOPBXJRET;ReturntoCallingprocedureGETNUMENDPSHOWNUMPROC;PUSHA;Savethecontentsofall;PUSHAregisters
MOVCX,0H;ZerotheCXregisterfordigitcounterMOVBX,10D;Setupdivisorof10decimalNEXTOUT:MOVDX,0H;ZeroDXregforhighorderwordofdivDIVBX;DividenumberinAXby10PUSHDX;SaveremainderonthestackINCCX;CountthedigitCMPAX,0H;IsnumberinAXgreaterthan0JGNEXTOUT;Yes,getnextdigitCHAROUT:POPAX;GetnumberfromthestackADDAX,30H;ConvertnumbertoASCIIcharacterMOVDL,AL;MovetocharacterprintregisterMOVAH,2INT21H;PrintthecharacterDECCX;ReducecharacterstoprintbyoneJNZCHAROUT;IfCX>0looptoprintnextdigit;POPA;RestoretheregistersRET;ReturntoCallingprocedureSHOWNUMENDP;此處輸入代碼段代碼;MOVAH,4CH;INT21HCODESENDSENDMAIN2、 匯編(masm/ML)3、 連接(link)4、 調(diào)試(debug)5、運(yùn)行INPUTANUM:45INPUTANUM:34THESESULTIS:79Pressanykeytocontinue五、實(shí)驗(yàn)中各個(gè)步驟遇到的問(wèn)題及解決方法、1、 匯編(masm/ML)2、 連接(link)3、 調(diào)試(debug)剛開(kāi)始時(shí)就是只能顯示倆條提示信息,不能輸出輸出結(jié)果的提示信息,也不能輸出結(jié)果,這個(gè)問(wèn)題是在給老師檢查時(shí)老師在子程序CHAROUT部分調(diào)用了2號(hào)功能鍵,然后問(wèn)題就迎刃而解了。六、總結(jié)經(jīng)驗(yàn)這個(gè)程序如果完全要自己來(lái)寫(xiě),是很難完全寫(xiě)對(duì)的,由于所有
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/Z 17626.1-2024電磁兼容試驗(yàn)和測(cè)量技術(shù)第1部分:抗擾度試驗(yàn)總論
- 建筑合同范例 標(biāo)準(zhǔn)版
- 內(nèi)墻面裝修合同范例
- 柴油續(xù)簽合同范例
- 泥料采購(gòu)合同范例
- 推廣咨詢費(fèi)合同范例
- 社區(qū)綠化合同范例
- 廢品轉(zhuǎn)讓合同范例
- 常用企業(yè)合同范例
- 無(wú)息分期還款合同范例
- JJF(陜) 085-2022 全自動(dòng)容量稀釋配標(biāo)儀校準(zhǔn)規(guī)范
- 粉末銷售合同范例
- 齊魯名家 談方論藥知到智慧樹(shù)章節(jié)測(cè)試課后答案2024年秋山東中醫(yī)藥大學(xué)
- 2024-2025學(xué)年人教版生物學(xué)八年級(jí)上冊(cè)期末復(fù)習(xí)練習(xí)題(含答案)
- 大學(xué)生職業(yè)生涯規(guī)劃與就業(yè)創(chuàng)業(yè)指導(dǎo)知到智慧樹(shù)章節(jié)測(cè)試課后答案2024年秋四川水利職業(yè)技術(shù)學(xué)院
- 檔案管理基本知識(shí)課件
- 高二語(yǔ)文上學(xué)期期末考點(diǎn)大串講(統(tǒng)編版選擇性必修上冊(cè)+中冊(cè))專題01 信息類文本閱讀(知識(shí)清單)
- 浙江強(qiáng)基聯(lián)盟2024年12月高三聯(lián)考?xì)v史試題(含答案)
- 中建地下防水施工方案
- 2025年上半年廈門(mén)市外事翻譯護(hù)照簽證中心招考易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 名師工作室建設(shè)與管理方案
評(píng)論
0/150
提交評(píng)論