版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 《匯編語言》課程設(shè)計報告</p><p> 題 目: 數(shù)值的數(shù)制轉(zhuǎn)換 </p><p> 院 (系): 計算機(jī)與信息工程學(xué)院 </p><p> 班 級: </p><p>
2、; 姓 名: </p><p> 學(xué) 號: </p><p> 指導(dǎo)教師: </p><p><b> 1設(shè)計主要任務(wù)</b&g
3、t;</p><p> 在這個程序中,首先以十進(jìn)制方式輸入你所轉(zhuǎn)換數(shù)據(jù)的數(shù)制,放入寄存器中,再輸入你所要轉(zhuǎn)換的數(shù)據(jù),通過你輸入的數(shù)制及該數(shù)制下數(shù)據(jù),將數(shù)據(jù)轉(zhuǎn)換成二進(jìn)制的數(shù),存放在計數(shù)器中,最后輸入將數(shù)據(jù)轉(zhuǎn)換后的數(shù)制,屏幕上就會顯示出轉(zhuǎn)后的數(shù)據(jù)。</p><p> 1.1設(shè)計任務(wù)與目標(biāo)</p><p> 軟件設(shè)計部分主要由三大部分構(gòu)成:即提示語部分、輸入轉(zhuǎn)換部分
4、和轉(zhuǎn)換輸出部分。其中提示語部分主要是提示操作者要輸入的項目,輸入轉(zhuǎn)換部分主要是將操作者輸入的數(shù)據(jù)進(jìn)行轉(zhuǎn)換并存入寄存器中,轉(zhuǎn)換輸出部分主要是將前一步存入寄存器中的數(shù)據(jù)進(jìn)行數(shù)制轉(zhuǎn)換并加以顯示。</p><p><b> 程序設(shè)計目標(biāo):</b></p><p> ?。?)屏幕顯示出參與轉(zhuǎn)換的數(shù)據(jù)與轉(zhuǎn)換的結(jié)果;</p><p> ?。?)具有選擇退出
5、和繼續(xù)的功能;</p><p><b> 2 設(shè)計方案</b></p><p> 根據(jù)設(shè)計要求,程序設(shè)計框圖如圖2-1所示。</p><p> 圖2-1 程序設(shè)計框圖</p><p><b> 3 主程序設(shè)計</b></p><p> 軟件主要任務(wù)包括將制定數(shù)制的數(shù)
6、據(jù)轉(zhuǎn)換成二進(jìn)制數(shù)據(jù)及將二進(jìn)制數(shù)據(jù)轉(zhuǎn)換成制定數(shù)據(jù),具體框圖設(shè)計如圖3-1所示。</p><p><b> 3.1 主程序部分</b></p><p> 主程序部分主要是調(diào)用功能子程序,通過主程序來依次調(diào)用不同功能的子程序,從而實現(xiàn)整個程序的功能。設(shè)計框圖如圖3-1 </p><p> 圖3-1 主程序流程圖</p><p
7、> 3.2 輸入并轉(zhuǎn)換部分</p><p> 此部分程序是用來實現(xiàn)從鍵盤輸入數(shù)據(jù)并將數(shù)據(jù)按照指定進(jìn)制轉(zhuǎn)換成機(jī)器的二進(jìn)制數(shù)據(jù)的目的。</p><p> 3.3 轉(zhuǎn)換并輸出部分</p><p> 此部分設(shè)計是實現(xiàn)將機(jī)器的二進(jìn)制數(shù)據(jù)轉(zhuǎn)換成制定數(shù)制數(shù)據(jù)的功能,并將最后的數(shù)據(jù)顯示出來。</p><p><b> 4 子程序設(shè)計
8、</b></p><p> 軟件主要任務(wù)包括提示子程序、輸入并轉(zhuǎn)換子程序、轉(zhuǎn)換并輸出子程序以及回車換行子程序具體框圖設(shè)計如圖3-1所示。</p><p> 4.1 提示語子程序</p><p> 此部分是調(diào)用DOS的9號功能顯示字符竄實現(xiàn)。通過判斷CX寄存器中的數(shù)制來控制顯示的提示語句。</p><p> 4.2 指定進(jìn)制
9、轉(zhuǎn)換為二進(jìn)制子程序</p><p> 此部分程序是先將輸入的數(shù)據(jù)的ASCII轉(zhuǎn)換成實際的數(shù)值,再利用迭代法,循環(huán)乘以數(shù)據(jù)的進(jìn)制,來實現(xiàn)將指定進(jìn)制的數(shù)據(jù)轉(zhuǎn)換成機(jī)器的二進(jìn)制數(shù)據(jù)的目的。</p><p> 4.3 將二進(jìn)制轉(zhuǎn)換為制定進(jìn)制數(shù)據(jù)子程序</p><p> 此部分設(shè)計是利用除以數(shù)制取余的方法,將機(jī)器的二進(jìn)制數(shù)據(jù)除以數(shù)制余數(shù)放在堆棧中,再將得到的商繼續(xù)除以數(shù)制
10、,這樣一直循環(huán)到商為0時結(jié)束,輸出則只將堆棧中的數(shù)一次取出,轉(zhuǎn)換成相應(yīng)的ASCII顯示即可。</p><p><b> 5 程序清單</b></p><p> DATA SEGMENT</p><p> MESS1 DB 'input system:','$'</p><p> M
11、ESS2 DB 'input number:','$'</p><p> MESS3 DB 'input system on display:','$'</p><p> MESS4 DB 'result:','$'</p><p> MESS5 DB 'e
12、xit? y/n:','$'</p><p><b> DATA ENDS</b></p><p> CODE SEGMENT</p><p> MAIN PROC FAR </p><p> ASSUME DS:DATA,CS:CODE</p><p><
13、;b> START:</b></p><p> MOV AX,DATA</p><p><b> MOV DS,AX</b></p><p><b> AGAIN:</b></p><p><b> MOV CX,1</b></p>&
14、lt;p> CALL TISHI</p><p><b> MOV SI,10</b></p><p> CALL SHIRU</p><p><b> MOV SI,BX</b></p><p><b> CALL CRLF</b></p>&l
15、t;p><b> MOV CX,2</b></p><p> CALL TISHI</p><p> CALL SHIRU</p><p><b> MOV AX,BX</b></p><p><b> PUSH AX</b></p><p&
16、gt;<b> CALL CRLF</b></p><p><b> MOV CX,3</b></p><p> CALL TISHI</p><p><b> MOV SI,10</b></p><p> CALL SHIRU</p><p>
17、;<b> MOV SI,BX</b></p><p><b> POP AX</b></p><p> CALL CHANGE</p><p><b> CALL CRLF</b></p><p> MOV AH,09 </p><p>
18、LEA DX,MESS5</p><p><b> INT 21H</b></p><p><b> MOV AH,1</b></p><p><b> INT 21H</b></p><p> CMP AL,79H</p><p><b&
19、gt; JE EXIT1</b></p><p><b> CALL CRLF</b></p><p><b> JMP AGAIN</b></p><p><b> EXIT1:</b></p><p> MOV AH,4CH</p>&l
20、t;p><b> INT 21H</b></p><p> MAIN ENDP </p><p> ;-----------tishi---------------</p><p> TISHI PROC NEAR</p><p><b> PUSH DX</b></p&g
21、t;<p><b> PUSH AX</b></p><p><b> CMP CX,2</b></p><p> JNB TISHI2</p><p><b> MOV AH,09</b></p><p> MOV DX,SEG MESS1</p
22、><p><b> MOV DS,DX</b></p><p> LEA DX,MESS1</p><p><b> INT 21H</b></p><p><b> JMP EXIT2</b></p><p><b> TISHI2:&
23、lt;/b></p><p><b> CMP CX,2</b></p><p><b> JA TISHI3</b></p><p><b> MOV AH,09</b></p><p> MOV DX,SEG MESS2</p><p>
24、;<b> MOV DS,DX</b></p><p> LEA DX,MESS2</p><p><b> INT 21H</b></p><p><b> JMP EXIT2</b></p><p><b> TISHI3:</b></
25、p><p><b> MOV AH,09</b></p><p> MOV DX,SEG MESS3</p><p><b> MOV DS,DX</b></p><p> LEA DX,MESS3</p><p><b> INT 21H</b>
26、</p><p><b> EXIT2:</b></p><p><b> POP AX</b></p><p><b> POP DX</b></p><p><b> RET</b></p><p> TISHI EN
27、DP</p><p> ;----------------to 2--------</p><p> SHIRU PROC NEAR</p><p><b> PUSH AX</b></p><p><b> MOV BX,0</b></p><p><b>
28、; NEWCHAR:</b></p><p><b> MOV AH,1</b></p><p><b> INT 21H</b></p><p> SUB AL,30H</p><p><b> JL EXIT3</b></p><p
29、> CMP AL,10D</p><p><b> JL NEXT</b></p><p> SUB AL,27H</p><p> CMP AL,0AH</p><p><b> JL EXIT3</b></p><p> CMP AL,1AH</p
30、><p><b> JGE EXIT3</b></p><p><b> NEXT:</b></p><p><b> CBW</b></p><p> XCHG AX,BX</p><p><b> MOV CX,SI</b>
31、;</p><p><b> MUL CX</b></p><p> XCHG AX,BX</p><p><b> ADD BX,AX</b></p><p> JMP NEWCHAR</p><p><b> EXIT3:</b></
32、p><p><b> POP AX</b></p><p><b> RET</b></p><p> SHIRU ENDP</p><p> ;--------change and show-----</p><p> CHANGE PROC NEAR</p&g
33、t;<p> XOR CX , CX</p><p> NEXT1:MOV DX , 0</p><p><b> DIV SI</b></p><p><b> PUSH DX</b></p><p><b> INC CX</b></p>
34、<p> CMP AX , 0</p><p><b> JNZ NEXT1</b></p><p><b> CALL CRLF</b></p><p><b> MOV AH,09</b></p><p> MOV DX,SEG MESS4</
35、p><p><b> MOV DS,DX</b></p><p> LEA DX,MESS4</p><p><b> INT 21H</b></p><p><b> OUTP:</b></p><p><b> POP DX</
36、b></p><p> ADD DL , 30H</p><p> CMP DL,3aH</p><p><b> JL PRINT</b></p><p><b> ADD DL,7H</b></p><p><b> PRINT:</b&g
37、t;</p><p> MOV AH , 2</p><p><b> INT 21H</b></p><p><b> LOOP OUTP</b></p><p><b> RET</b></p><p> CHANGE ENDP</p
38、><p> ;-----------Enter--------</p><p> CRLF PROC FAR</p><p> MOV DL,0DH</p><p><b> MOV AH,2</b></p><p><b> INT 21H</b></p>
39、<p> MOV DL,0AH</p><p><b> MOV AH,2</b></p><p><b> INT 21H</b></p><p><b> RET</b></p><p> CRLF ENDP </p><p&
40、gt;<b> CODE ENDS</b></p><p><b> END START</b></p><p><b> 6 調(diào)試</b></p><p> 程序調(diào)試主要使用宏匯編程序MASM.EXE、連接程序LINK.EXE、調(diào)試程序DEBUG.EXE完成主程序及子程序的設(shè)計。程序執(zhí)行結(jié)果
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 課程設(shè)計報告--數(shù)制轉(zhuǎn)換
- 數(shù)制轉(zhuǎn)換課程設(shè)計--進(jìn)制轉(zhuǎn)換的實現(xiàn)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計--數(shù)制轉(zhuǎn)換問題
- 數(shù)值轉(zhuǎn)換 課程設(shè)計報告
- 數(shù)值轉(zhuǎn)換課程設(shè)計報告
- 匯編語言課程設(shè)計--代碼轉(zhuǎn)換程序
- java語言課程設(shè)計----帶函數(shù)功能和數(shù)制轉(zhuǎn)換功能的計算器制作
- 數(shù)制轉(zhuǎn)換器
- 數(shù)制轉(zhuǎn)換練習(xí)-答案
- 課程設(shè)計--進(jìn)制轉(zhuǎn)換
- 匯編語言課程設(shè)計報告---字母大小寫轉(zhuǎn)換
- 計算機(jī)數(shù)制轉(zhuǎn)換
- 課程設(shè)計--進(jìn)制轉(zhuǎn)換
- 匯編語言課程設(shè)計---大小寫字母轉(zhuǎn)換
- 實驗二+++棧的應(yīng)用(數(shù)制轉(zhuǎn)換)
- 數(shù)值逼近課程設(shè)計
- 課程設(shè)計--進(jìn)制轉(zhuǎn)換.doc
- 數(shù)值分析課程設(shè)計
- 數(shù)值分析課程設(shè)計
- 數(shù)值計算課程設(shè)計
評論
0/150
提交評論