版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 微機原理課程設(shè)計</b></p><p><b> 姓名: </b></p><p><b> 班級:生醫(yī)0801</b></p><p><b> 學(xué)號: </b></p><p> 日期:2011-01-09<
2、;/p><p><b> 、</b></p><p><b> 設(shè)計題目</b></p><p><b> 學(xué)生成績名次表設(shè)計</b></p><p><b> 設(shè)計要求</b></p><p> 為進一步熟悉排序方法,編寫程
3、序,將0-100之間的30個成績存入首址為1000H的存儲區(qū)中。1000H+i表示學(xué)號為i的學(xué)生成績。編寫程序使得在2000H開始的區(qū)域排出名次表。2000H+i為學(xué)號i的學(xué)生的名次。</p><p><b> 設(shè)計程序</b></p><p> DATA SEGMENT</p><p> STUNUM EQU 10<
4、/p><p> MESS1 DB 'qing yi ci shu ru 1-10 hao xue sheng de cheng ji :',0DH,0AH,'$'</p><p> MESS2 DB '1-10 hao xue sheng de ming ci yi ci wei :',0DH,0AH,'$
5、9; </p><p> ORG 1000H</p><p> CHENGJI DB 30 DUP(?)</p><p> ORG 2000H</p><p> MINGCI DB 30 DUP(?)</p><p> DATA ENDS</p><
6、;p> CODE SEGMENT</p><p> ASSUME CS:CODE,DS:DATA</p><p> START: MOV AX,DATA</p><p> MOV DS,AX ;chu shi hua</p><p> MOV AH,09H</p><
7、p> MOV DX,OFFSET MESS1 </p><p> INT 21H ;xian shi ti shi xin xi</p><p> MOV SI,OFFSET CHENGJI ;cheng ji biao shou zhi </p><p> MOV CX,STUNUM
8、 ;xue sheng shu song ru CX</p><p> UUU: CALL SHURU ;diao yong shu ru zi cheng cu, shu zhi song DX</p><p> MOV [SI],DL ;cun ru cheng ji biao huan chong qu </p>
9、<p> INC SI ;zhi xiang xia yi dan yuan </p><p><b> LOOP UUU</b></p><p> MOV CX,STUNUM ;xue sheng shu song CX </p><p> MOV DI,OFFSET M
10、INGCI ;ming ci biao shou zhi </p><p> VVV: CALL BIJIAO ;diao yong bi jiao zi cheng xu</p><p> MOV AL,STUNUM ;xue sheng shu song AL</p><p> SUB AL,CL&
11、lt;/p><p> INC AL ;ji suan ming ci</p><p> MOV BX,DX</p><p> MOV [DI+BX],AL ;ji DX xue hao dui ying ming ci</p><p><b> LOOP VVV</
12、b></p><p> MOV AH,09H</p><p> LEA DX,MESS2</p><p> INT 21H ;xian shi ti shi xin xi</p><p> MOV CX,STUNUM </p><p> MO
13、V SI,OFFSET MINGCI </p><p> WWW: MOV AL,[SI]</p><p> CALL XIANSHI</p><p><b> PUSH DX</b></p><p><b> PUSH AX </b></p><p>
14、; MOV AH,02</p><p> MOV DL,20H</p><p> INT 21H ;xian shi kong ge</p><p><b> POP AX</b></p><p><b> POP DX</b></p><p>
15、<b> INC SI</b></p><p> LOOP WWW </p><p> MOV AX,4C00H</p><p><b> INT 21H</b></p><p> BIJIAO PROC NEAR </p><p&
16、gt; PUSH CX </p><p> MOV CX,STUNUM </p><p> MOV AL,00H </p><p> MOV BX,OFFSET CHENGJI</p><p> MOV SI,BX &l
17、t;/p><p> CCC: CMP AL,[SI]</p><p> JAE JJJ </p><p> MOV AL,[SI] </p><p> MOV DX,SI</p><p> SUB DX,BX </p><p&g
18、t; JJJ: INC SI </p><p><b> LOOP CCC</b></p><p> ADD BX,DX</p><p> MOV BYTE PTR [BX],00H </p><p><b> POP CX</b></p&
19、gt;<p><b> RET</b></p><p> BIJIAO ENDP</p><p> XIANSHI PROC NEAR </p><p><b> PUSH CX</b></p><p> MOV BL,AL</p&g
20、t;<p> MOV DL,BL</p><p> MOV CL,04</p><p> ROL DL,CL</p><p> AND DL,0FH</p><p> CALL XIANSHI1</p><p> MOV DL,BL</p><p>
21、; AND DL,0FH</p><p> CALL XIANSHI1</p><p><b> POP CX</b></p><p><b> RET</b></p><p> XIANSHI ENDP</p><p> XIANSHI1 PRO
22、C NEAR</p><p> ADD DL,30H</p><p> CMP DL,3AH</p><p><b> JB DDD</b></p><p> ADD DL,27H</p><p> DDD: MOV AH,02H</p><
23、p><b> INT 21H</b></p><p><b> RET</b></p><p> XIANSHI1 ENDP </p><p> SHURU PROC NEAR </p><p><b&
24、gt; PUSH CX</b></p><p> XOR DX,DX</p><p> GGG: MOV AH,01H</p><p> INT 21H</p><p> CMP AL,0DH</p><p><b> JZ PPP</b><
25、/p><p><b> MOV CL,04</b></p><p><b> SHL DX,CL</b></p><p><b> XOR AH,AH</b></p><p><b> ADD DX,AX</b></p><p>
26、;<b> JMP GGG</b></p><p> PPP: PUSH DX</p><p> MOV AH,02H</p><p> MOV DL,0AH</p><p><b> INT 21H</b></p><p><b> POP
27、 DX</b></p><p><b> POP CX</b></p><p><b> RET</b></p><p> SHURU ENDP</p><p> CODE ENDS</p><p> END START<
28、/p><p><b> 四.設(shè)計流程圖</b></p><p><b> 設(shè)計題目</b></p><p> 小寫字母轉(zhuǎn)換成大寫字母</p><p><b> 設(shè)計要求</b></p><p> 為了解小寫字母和大寫字母在計算機內(nèi)的表示方法,并學(xué)習(xí)
29、如何進行轉(zhuǎn)換。編寫程序,接收鍵盤字符,并將其中</p><p><b> N</b></p><p> 小寫字母轉(zhuǎn)變?yōu)榇髮懽帜?,然后顯示在屏幕上。</p><p><b> 設(shè)計程序</b></p><p> DATA SEGMENT</p><p> MESS1
30、 DB 'qing shu ru zi fu chuan!',0DH,0AH,'$'</p><p> BUF DB 80 DUP('$')</p><p> DATA ENDS</p><p> CODE SEGMENT</p><p> ASSUME
31、 CS:CODE,DS:DATA</p><p> START: MOV AX,DATA</p><p> MOV DS,AX</p><p> MOV BX,OFFSET BUF ;BX zhi xiang huan chong qu shou zhi </p><p> MOV AH,09H</p>
32、<p> LEA DX,MESS1</p><p><b> INT 21H</b></p><p> KKK: MOV SI,0000H ;SI qing 0</p><p> SB: MOV AH,01H </p><p><b&g
33、t; INT 21H</b></p><p> CMP AL,0DH</p><p><b> JZ ppp</b></p><p> CMP AL,61H ;97(a)</p><p><b> JB TTT</b></p>
34、<p> CMP AL,7AH ;122(z)</p><p> JA TTT </p><p> SUB AL,20H ;xiao xie zi mu zhuan huan cheng da xie zi mu</p><p> TTT: MOV [BX+SI],
35、AL </p><p> INC SI </p><p><b> JMP SB</b></p><p> PPP: MOV AH,09H</p><p> MOV DX,BX</p><p> INT 21H
36、 ;xian shi zhuan huan hou de zi fu chuan </p><p> MOV AX,4C00H</p><p><b> INT 21H</b></p><p> CODE ENDS </p><p> END STA
37、RT</p><p><b> 設(shè)計流程圖</b></p><p><b> 設(shè)計題目</b></p><p><b> 響鈴設(shè)計</b></p><p><b> 設(shè)計要求</b></p><p> 為掌握響鈴的使用方法
38、,編寫程序,從鍵盤接收輸入字符,如果是數(shù)字N,則響鈴N次;如果不是數(shù)字,則不響。</p><p><b> 設(shè)計程序</b></p><p> DATA SEGMENT</p><p> MESS1 DB 'QING AN XIA SHU ZI JIAN ',0DH,0AH,'$'</p>
39、<p> DATA ENDS</p><p> CODE SEGMENT</p><p> ASSUME CS:CODE,DS:DATA</p><p> START: MOV AX,DATA</p><p> MOV DS,AX</p><p> MOV AH,09H</p&g
40、t;<p> LEA DX,MESS1</p><p><b> INT 21H</b></p><p> KKK: MOV AH,01H</p><p> INT 21H </p><p> CMP AL,0DH</p><p> JE
41、 PPP </p><p> CMP AL,39H</p><p> JA KKK; </p><p> SUB AL,2FH</p><p> XOR AH,AH</p><p> MOV BP,AX </p><p>
42、<b> DEC BP</b></p><p><b> JZ KKK</b></p><p> GGG: MOV AH,02H</p><p> MOV DL,07H</p><p> INT 21H </p><p> MO
43、V CX,0FFFFH</p><p> UUU: LOOP UUU </p><p> DEC BP </p><p> JNZ GGG </p><p> PPP: MOV AX,4C00H</p><p> INT 21H &l
44、t;/p><p> CODE ENDS</p><p> END START</p><p><b> 設(shè)計流程圖</b></p><p><b> 設(shè)計題目</b></p><p><b> 讀文件的設(shè)計</b></p>
45、<p><b> 二.設(shè)計要求</b></p><p> 為掌握文件的DOS功能調(diào)用方法,編寫程序,使它相當(dāng)于TYPE命令的功能。先由屏幕顯示提示信息,在讀取文件名(含路徑),然后在屏幕上顯示文件內(nèi)容。</p><p><b> 三.設(shè)計程序</b></p><p> CRLF MACRO </
46、p><p> MOV AH,02H</p><p> MOV DL,0DH</p><p><b> INT 21H</b></p><p> MOV AH,02H</p><p> MOV DL,0AH</p><p><b> INT 21H</
47、b></p><p><b> ENDM</b></p><p> DATA SEGMENT </p><p> HANDLE DW ?</p><p> NAMEBUF DB 49</p><p><b> DB ?</b></p>&l
48、t;p> DB 50 DUP (?)</p><p> DATBUF DB 200 DUP(?)</p><p> INTRO DB 0DH,0AH,'ENTER PATHNAME:$'</p><p> EMESS DB 'ERROR $'</p><p> DATA ENDS</p
49、><p> STACK SEGMENT</p><p> STA DW 32 DUP (?)</p><p><b> TOP DW ?</b></p><p> STACK ENDS</p><p> CODE SEGMENT</p><p> ASSUM
50、E CS:CODE,DS:DATA,ES:DATA,SS:STACK</p><p> START: MOV AX,DATA</p><p> MOV DS,AX</p><p> MOV ES,AX</p><p> MOV SP,TOP</p><p> MOV AH,09H</p>
51、;<p> MOV DX,OFFSET INTRO</p><p><b> INT 21H</b></p><p> MOV AH,0AH</p><p> MOV DX,OFFSET NAMEBUF</p><p><b> INT21H</b></p&
52、gt;<p><b> CRLF</b></p><p> MOVSI,OFFSET NAMEBUF</p><p> MOV BL,[SI+1]</p><p><b> MOV BH,0</b></p><p> MOV BYTE PTR [NAMEBUF+BX+
53、2],0</p><p> MOV AH,3DH</p><p><b> MOV AL,0</b></p><p> MOV DX,OFFSET NAMEBUF+2</p><p><b> INT 21H</b></p><p> MOV BX,AX&
54、lt;/p><p> JC ERROR</p><p> MOV HANDLE,AX</p><p> TTT: MOV AH,3FH</p><p> MOVBX,HANDLE ;文件代號</p><p> MOVCX,200 ;讀取字節(jié)數(shù)</
55、p><p> MOVDX,OFFSET DATBUF ;緩沖區(qū)首址</p><p> INT21H ;讀文件</p><p> MOVBX,AX ;讀文件出錯轉(zhuǎn)ERROR</p><p><b> JCERROR</b></p><p>&
56、lt;b> CMPAX,0</b></p><p> JEEXIT ;讀取字符數(shù)為0,則到文件尾,轉(zhuǎn)EXIT</p><p> MOVCX,AX ;字符數(shù)</p><p> MOVBX,OFFSET DATBUF ;BX指向傳輸緩沖區(qū)首址</p><p> JJJ: MOVAH,2
57、 ;顯示字符的功能調(diào)用</p><p> MOVDL,[BX] ;取字符</p><p> CMPAL,1AH</p><p> JEEXIT ;若為文件結(jié)束符則轉(zhuǎn)EXIT</p><p> INT21H ;顯示</p>&l
58、t;p> INCBX ;指向下一個字符</p><p> LOOPJJJ ;循環(huán)</p><p> JMPTTT ;讀取文件下一部分</p><p> EXIT: MOVAH,3EH</p><p> MOVBX,HANDLE
59、 ;關(guān)閉文件</p><p><b> INT21H</b></p><p><b> MOVBX,AX</b></p><p> JCERROR ;關(guān)閉出錯轉(zhuǎn)ERROR</p><p> MOVAX,4C00H</p><p> IN
60、T21H ;返回DOS</p><p> ERROR:MOVAH,09H</p><p> MOVDX,OFFSET EMESS ;顯示出錯信息</p><p><b> INT21H</b></p><p> CALLBINIHEX ;顯示出錯代
61、號</p><p><b> JMPEXIT</b></p><p> BINIHEX PROC NEAR</p><p> MOVCH,04</p><p> ROT: MOVCL,04</p><p> ROLBX,CL</p><p>
62、 MOVAL,BL</p><p> ANDAL,0FH</p><p> ADDAL,30H</p><p> CMPAL,3AH</p><p><b> JLPRINT</b></p><p> ADDAL,27H </p>&l
63、t;p> PRINT:MOVDL,AL</p><p> MOVAH,02</p><p><b> INT21H</b></p><p><b> DECCH</b></p><p><b> JNZROT</b></p>&
64、lt;p><b> RET</b></p><p> BINIHEXENDP</p><p> CODE ENDS</p><p> END START </p><p><b> 設(shè)計流程圖</b></p><p><b> 實習(xí)小結(jié)&l
65、t;/b></p><p> 為期一周的微機原理課程設(shè)計,使我較為熟練使MASM軟件和熟悉了DOS環(huán)境,能夠利用匯編語言編一些簡單實用的小程序。這次微機原理課程設(shè)計我重點學(xué)習(xí)了學(xué)生成績管理,響鈴設(shè)計,大小寫字母轉(zhuǎn)換和讀文件等程序的編寫、調(diào)試、和運行。由于我們對匯編語言的了解不是很多。我們只好利用以前學(xué)習(xí)的C語言編程基礎(chǔ),利用編程的相通之處,模仿書本的例子程序用匯編語言將我們的思想表達(dá)出來。另外我們也到圖書
66、館以及上網(wǎng)找到了很多例題,有了這些例子,我們用匯編語言編程實現(xiàn)就容易了很多,當(dāng)然也順利了很多。由以前對匯編語言和DOS的生疏,甚至可以說知之甚少的情況,到現(xiàn)在能用它編出一些簡單的程序,我們覺得收獲不少。當(dāng)然,這里也不能忘記我們的老師,沒有他們的引導(dǎo),或許我們對匯編語言的理解還處于萌芽階段。后來,我為了更熟悉的掌握MASM和匯編語言,我又挑戰(zhàn)了難度更高的一題,雖然后來由于種種原因沒能完全成功,但我也達(dá)到了訓(xùn)練的目的,感覺收獲頗豐。另外通過
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 學(xué)生成績管理---課程設(shè)計
- c++課程設(shè)計--學(xué)生成績表
- 學(xué)生成績課程設(shè)計報告
- 初三年級成績名次表
- 學(xué)生成績管理系統(tǒng)課程設(shè)計
- 課程設(shè)計——學(xué)生成績管理系統(tǒng)
- 課程設(shè)計---學(xué)生成績管理系統(tǒng)
- 學(xué)生成績管理系統(tǒng)課程設(shè)計
- 學(xué)生成績管理匯編課程設(shè)計
- 學(xué)生成績管理系統(tǒng)課程設(shè)計
- 學(xué)生成績管理課程設(shè)計
- 學(xué)生成績管理課程設(shè)計
- 學(xué)生成績管理系統(tǒng)課程設(shè)計
- 學(xué)生成績管理系統(tǒng)課程設(shè)計
- 匯編課程設(shè)計---學(xué)生成績管理
- 學(xué)生成績管理系統(tǒng) 課程設(shè)計
- 課程設(shè)計--學(xué)生成績管理系統(tǒng)
- 學(xué)生成績管理系統(tǒng)課程設(shè)計
- 課程設(shè)計-- 學(xué)生成績管理系統(tǒng)
- 學(xué)生成績管理系統(tǒng)課程設(shè)計
評論
0/150
提交評論