




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
本文格式為Word版,下載可任意編輯——微機原理試驗報告一、試驗?zāi)康?/p>
(1)學(xué)習(xí)匯編語言循環(huán)結(jié)構(gòu)語句的特點,重點把握冒泡排序的方法。(2)理解并把握各種指令的功能,編寫完整的匯編源程序。
(3)進一步熟悉DEBUG的調(diào)試命令,運用DEBUG進行調(diào)試匯編語言程序。
二、試驗內(nèi)容及要求
(1)試驗內(nèi)容:從鍵盤輸入五個有符號數(shù),用冒泡排序法將其按從小到大的順序排序。(2)試驗要求:
①編制程序,對這組數(shù)進行排序并輸出原數(shù)據(jù)及排序后的數(shù)據(jù);
②利用DEBUG調(diào)試工具,用D0命令,查看排序前后內(nèi)存數(shù)據(jù)的變化;
③去掉最大值和最小值,求出其余值的平均值,輸出最大值、最小值和平均值;④用壓棧PUSH和出棧POP指令,將平均值按位逐個輸出;⑤將平均值轉(zhuǎn)化為二進制串,并將這組二進制串輸出;⑥所有數(shù)據(jù)輸出前要用字符串的輸出指令進行輸出提醒,所有數(shù)據(jù)結(jié)果能明了顯示。
三、程序流程圖
開始(1)主程序:MAIN
初始化
鍵盤輸入數(shù)據(jù)
調(diào)用INPUT子程序
否
輸入是否正確是
顯示原始數(shù)據(jù)
調(diào)用OUTPUT子程序
顯示輸入錯誤
顯示冒泡排序后的數(shù)據(jù)調(diào)用SORT子程序調(diào)用OUTPUT子程序顯示最小值Min顯示One子程序顯示最大值Max調(diào)用One子程序顯示其余數(shù)平均值A(chǔ)verage調(diào)用One子程序顯示平均值二進制串Binary調(diào)用One子程序終止(2)冒泡排序子程序:SORT
COUNT1外循環(huán)次數(shù)
COUNT2內(nèi)循環(huán)次數(shù)
i數(shù)組下標(biāo)否是否是否是
進入初始化COUNT1=N-1COUNT2=COUNT1SI=0Ai≥Ai+1Ai與Ai+1兩數(shù)交換SI=SI+2COUNT2=COUNT2-1COUNT2=0?COUNT1=COUNT1-1COUNT2=0?返回四、程序清單
NAMEBUBBLE_SORTDATASEGMENT
ARRAYDW5DUP(?);輸入數(shù)據(jù)的存儲單元COUNTDW5TWODW2
FLAG1DW0;判斷符號標(biāo)志
FLAG2DB0;判斷首位是否為零的標(biāo)志FAULTDW-1;判斷出錯標(biāo)志CRDB0DH,0AH,'$'
STR1DB'PleaseinputfivenumbersseperatedwithspaceandfinishedwithEnter:','$'STR2DB'Theoriginalnumbers:','$'STR3DB'Thesortednumbers:','$'STR4DB'TheMin:','$'STR5DB'TheMax:','$'STR6DB'TheAverage:','$'
STR7DB'Thebinarysystemoftheaverage:','$'STR8DB'Inputerror!Pleaseinputagain!''$'DATAENDS
CODESEGMENTMAINPROCFAR
ASSUMECS:CODE,DS:DATA,ES:DATASTART:PUSHDSANDAX,0PUSHAX
MOVAX,DATAMOVDS,AXLEADX,STR1
MOVAH,09H;9號DOS功能調(diào)用,提醒輸入數(shù)據(jù)INT21H
CALLCRLF;回車換行
REIN:CALLINPUT;調(diào)用INPUT子程序,輸入原始數(shù)據(jù)CMPAX,FAULT;判斷是否出錯,JEREIN;出錯則重新輸入LEADX,STR2
MOVAH,09H;9號DOS功能調(diào)用,提醒輸出原始數(shù)據(jù)INT21H
CALLOUTPUT;調(diào)用OUTPUT子程序,輸出原始數(shù)據(jù)CALLSORT;調(diào)用SORT子程序,進行冒泡排序LEADX,STR3
MOVAH,09H;9號DOS功能調(diào)用,提醒輸出排序后的數(shù)據(jù)INT21H
CALLOUTPUT;調(diào)用OUTPUT子程序,輸出排序后的數(shù)據(jù)
ANDSI,0ANDBX,0
MOVBX,ARRAY[SI];將最小值存入BXLEADX,STR4
MOVAH,09H;9號DOS功能調(diào)用,提醒輸出數(shù)據(jù)的最小值INT21H
CALLONE;調(diào)用ONE子程序,輸出最小值CALLCRLF
LEADX,STR5
MOVAH,09H;9號DOS功能調(diào)用,提醒輸出排序后的最大值INT21H
MOVBX,ARRAY[SI+8];將最大值存入BX
CALLONE;調(diào)用ONE子程序,輸出最大值CALLCRLF
LEADX,STR6
MOVAH,09H;9號DOS功能調(diào)用,提醒輸出平均值INT21HANDDX,0
MOVAX,ARRAY[SI+2];將去掉最大最小值的其余各數(shù)之和存入AXADDAX,ARRAY[SI+4]ADCAX,ARRAY[SI+6]
MOVCX,COUNT;計數(shù)器CX=5DECCX;CX←CX-1DECCX
DIVCX;字除法,余數(shù)存入AX
MOVBX,AX;將余下各數(shù)的平均值存入BX
CALLONE;調(diào)用ONE子程序,輸出去掉最大最小值的其余數(shù)平均值CALLCRLF
LEADX,STR6
MOVAH,09H;9號DOS功能調(diào)用,提醒輸出平均值的二進制串MOVCX,16;16位二進制串,計數(shù)器初始值為16LL1:ANDDX,0DIVTWOPUSHDXLOOPLL1
MOVCX,16LL2:POPDX
ADDDL,30H;將DL中的數(shù)進行ASC
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年云南省建水縣高三質(zhì)量監(jiān)測(三)物理試題試卷含解析
- 周口職業(yè)技術(shù)學(xué)院《生物工程設(shè)備與設(shè)計》2023-2024學(xué)年第二學(xué)期期末試卷
- 上海歐華職業(yè)技術(shù)學(xué)院《幼兒園一日活動設(shè)計與組織》2023-2024學(xué)年第二學(xué)期期末試卷
- 臨夏現(xiàn)代職業(yè)學(xué)院《小學(xué)教育科學(xué)研究方法》2023-2024學(xué)年第二學(xué)期期末試卷
- 山東省東營市2024-2025學(xué)年六年級數(shù)學(xué)小升初摸底考試含解析
- 公車加油卡管理使用制度
- 汕尾排水帶施工方案
- 內(nèi)蒙古赤峰市名校2024-2025學(xué)年高一上學(xué)期期末聯(lián)考英語試題(含聽力)
- 安徽省智學(xué)大聯(lián)考2024-2025學(xué)年高二上學(xué)期1月期末英語試題【含答案】
- 沈陽彩色混凝土施工方案
- 2025年企業(yè)資金授權(quán)管理協(xié)議范本
- 2024-2025學(xué)年山東省濟南市九年級(上)期末語文試卷(含答案)
- 鄧宗良《煤油燈》閱讀答案
- 2024年醫(yī)療器械經(jīng)營質(zhì)量管理規(guī)范培訓(xùn)課件
- 中華人民共和國學(xué)前教育法-知識培訓(xùn)
- 2024年計算機二級WPS考試題庫380題(含答案)
- 寶石花鑫盛油服公司考試題
- 員工考勤表(通用版)
- 3號鋼筋加工場桁吊安裝方案
- 關(guān)于加快駱家莊城中村改造專題報告(第四稿)
- 公司外派人員申請審批表
評論
0/150
提交評論