程序相關(guān)設(shè)計(jì)_第1頁
程序相關(guān)設(shè)計(jì)_第2頁
程序相關(guān)設(shè)計(jì)_第3頁
程序相關(guān)設(shè)計(jì)_第4頁
程序相關(guān)設(shè)計(jì)_第5頁
已閱讀5頁,還剩14頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、程序相關(guān)設(shè)計(jì)2022-2-182本章要點(diǎn)u輸入/輸出程序設(shè)計(jì)u分支程序設(shè)計(jì)u多分支程序設(shè)計(jì)u循環(huán)程序設(shè)計(jì)u多重循環(huán)程序設(shè)計(jì)u字符串程序設(shè)計(jì)2022-2-18寧波大學(xué)科技學(xué)院計(jì)算機(jī)系3編制匯編語言程序的步驟:編制匯編語言程序的步驟:(1) 分析題意,確定算法分析題意,確定算法(2) 根據(jù)算法畫出程序框圖根據(jù)算法畫出程序框圖(3) 根據(jù)框圖編寫程序根據(jù)框圖編寫程序(4) 上機(jī)調(diào)試程序上機(jī)調(diào)試程序2022-2-18寧波大學(xué)科技學(xué)院計(jì)算機(jī)系4分支結(jié)構(gòu)分支結(jié)構(gòu) 子程序結(jié)構(gòu)子程序結(jié)構(gòu)程序結(jié)構(gòu):程序結(jié)構(gòu): 復(fù)合結(jié)構(gòu):多種程序結(jié)構(gòu)的組合復(fù)合結(jié)構(gòu):多種程序結(jié)構(gòu)的組合 順序結(jié)構(gòu)順序結(jié)構(gòu) 循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)2022-

2、2-18寧波大學(xué)科技學(xué)院計(jì)算機(jī)系51. 輸入輸入/ /輸出程序設(shè)計(jì)輸出程序設(shè)計(jì) 本節(jié)課只涉及鍵盤輸入和屏幕輸出。本節(jié)課只涉及鍵盤輸入和屏幕輸出。 輸入輸入/輸出涉及外設(shè),需要使用操作系統(tǒng)輸出涉及外設(shè),需要使用操作系統(tǒng)提供的系統(tǒng)調(diào)用用戶界面:提供的系統(tǒng)調(diào)用用戶界面: DOS提供了提供了INT 21H系統(tǒng)調(diào)用功能系統(tǒng)調(diào)用功能 BIOS提供了提供了INT 10H系統(tǒng)調(diào)用功能系統(tǒng)調(diào)用功能 實(shí)驗(yàn)中以實(shí)驗(yàn)中以DOS的的INT 21H系統(tǒng)調(diào)用來實(shí)系統(tǒng)調(diào)用來實(shí)現(xiàn)輸入現(xiàn)輸入/輸出。輸出。2022-2-18寧波大學(xué)科技學(xué)院計(jì)算機(jī)系6輸入設(shè)計(jì)輸入設(shè)計(jì)輸入一個(gè)字符輸入一個(gè)字符(P104/01號(hào)調(diào)用)號(hào)調(diào)用)調(diào)用條件:

3、調(diào)用條件: AL=鍵盤輸入的字符鍵盤輸入的字符 AH=01格式:格式:MOV AH,01HINT 21H功能:將鍵盤輸入的一個(gè)字符的功能:將鍵盤輸入的一個(gè)字符的ASCII碼送碼送AL 寄存器。寄存器。注意:注意:1、只能接收一個(gè)字符、只能接收一個(gè)字符 2、輸入的是該字符的、輸入的是該字符的ASCII碼,對(duì)于數(shù)碼,對(duì)于數(shù)值使用時(shí)要轉(zhuǎn)換成相應(yīng)的值使用時(shí)要轉(zhuǎn)換成相應(yīng)的BCD碼(減碼(減30H)。)。2022-2-18寧波大學(xué)科技學(xué)院計(jì)算機(jī)系7 例如:從鍵盤輸入一個(gè)字符,送變量例如:從鍵盤輸入一個(gè)字符,送變量X中中DATA SEGMENTXDB?;定義變量;定義變量X為字節(jié)變量為字節(jié)變量DATAEND

4、SCODE SEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AX;* INPUT X *MOVAH,01H;1號(hào)功能調(diào)用號(hào)功能調(diào)用INT21H;接收鍵盤輸入;接收鍵盤輸入MOVX,AL;將字符送;將字符送X單元單元;* RETURN TO DOS *MOVAH,4CHINT 21HCODE ENDSEND START2022-2-18寧波大學(xué)科技學(xué)院計(jì)算機(jī)系8 輸出設(shè)計(jì)輸出設(shè)計(jì)輸出一個(gè)字符輸出一個(gè)字符 (P104/02號(hào)調(diào)用)號(hào)調(diào)用)調(diào)用條件:調(diào)用條件: DL=待輸出的字符待輸出的字符ASCII碼碼AH=02格式:格式:MOV DL,待輸出的

5、字符,待輸出的字符ASCII碼碼MOV AH,02HINT21H注意:只能輸出一個(gè)字符的注意:只能輸出一個(gè)字符的ASCII碼碼例如:鍵盤輸入例如:鍵盤輸入X,屏幕輸出,屏幕輸出X+2的值,設(shè)的值,設(shè)X+29。DATASEGMENTXDB?DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AX2022-2-18寧波大學(xué)科技學(xué)院計(jì)算機(jī)系9;* INPUT X *MOVAH,01HINT21HMOVX,AL;* OUTPUT X+2 *ADDAL,2MOVDL,ALMOVAH,02HINT21H;* RETURN TO DOS

6、 *MOVAH,4CHINT21HCODE ENDSENDSTART2022-2-18寧波大學(xué)科技學(xué)院計(jì)算機(jī)系10課堂練習(xí)課堂練習(xí)1將一個(gè)字節(jié)的壓縮將一個(gè)字節(jié)的壓縮BCD碼轉(zhuǎn)換為兩個(gè)碼轉(zhuǎn)換為兩個(gè)ASCII碼輸出碼輸出分析:屏幕輸出的只能是分析:屏幕輸出的只能是ASCII碼,所以要轉(zhuǎn)換碼,所以要轉(zhuǎn)換壓縮壓縮BCD碼:碼:ASCII碼:碼: 輸出輸出 輸出輸出BCD1 BCD23H BCD13H BCD22022-2-18寧波大學(xué)科技學(xué)院計(jì)算機(jī)系11 輸出字符串輸出字符串 (P104/09號(hào)調(diào)用)號(hào)調(diào)用)調(diào)用條件:調(diào)用條件:字符串要放字符串要放DS中,必須以中,必須以$作為串結(jié)束符號(hào)作為串結(jié)束符號(hào)

7、DS:DX=待輸出的字符串起始地址待輸出的字符串起始地址AH=09例如:顯示字符串例如:顯示字符串“Welcome to NB University”DATASEGMENTSTRDBWelcome to NB University,$DATAENDSCODESEGMENTASSUMECS:CODE, DS:DATASTART: MOVAX, DATAMOVDS, AXLEADX, STR;或用或用MOV DX,OFFSET STRMOVAH, 09HINT21HMOV AH,4CHINT 21HCODEENDSENDSTART2022-2-18寧波大學(xué)科技學(xué)院計(jì)算機(jī)系12回車換行(另起一行)的

8、實(shí)現(xiàn)回車換行(另起一行)的實(shí)現(xiàn)利用字符串輸出功能輸出利用字符串輸出功能輸出0DH,OAH,$ 回車回車 換行換行 串結(jié)束符串結(jié)束符或:或: CR,LF,$回車換行的幾種表示方法:回車換行的幾種表示方法:1、數(shù)據(jù)段中定義一個(gè)換行的變量名、數(shù)據(jù)段中定義一個(gè)換行的變量名NEXTLINE DB 0DH,0AH,$2、緊跟輸出的字符串后面:、緊跟輸出的字符串后面:DB 待輸出的字符串待輸出的字符串,0DH,0AH,$2022-2-18寧波大學(xué)科技學(xué)院計(jì)算機(jī)系13例如:將例如:將welcome to NB University顯示兩行。顯示兩行。DATA SEGMENTLEA DX, NEXTLINE S

9、TR DB Welcome to NB University$MOV AH, 09H NEXTLINE DB 0DH,0AH,$INT 21HDATA ENDSLEA DX, STR ;輸出第;輸出第2行行CODE SEGMENTMOV AH, 09H ASSUME CS:CODE, DS:DATAINT 21HSTART: MOV AX, DATA MOV AH, 4CH MOV DS, AX INT 21HLEA DX, STR ;輸出第;輸出第1行行 CODE ENDS MOV AH, 09H END STARTINT 21H或?qū)⒒驅(qū)TR定義為:定義為:Wwlcome to NB Un

10、iversity,odh,oah,$2022-2-18寧波大學(xué)科技學(xué)院計(jì)算機(jī)系14輸入字符串輸入字符串 ( P105 /0A號(hào)功能調(diào)用)號(hào)功能調(diào)用)調(diào)用條件:調(diào)用條件:DS:DX=待輸入的字符串起始地址待輸入的字符串起始地址 (DS:DX)=字符串最大空間長(zhǎng)度字符串最大空間長(zhǎng)度 AH=0AH返回參數(shù):接收的字符個(gè)數(shù)在(返回參數(shù):接收的字符個(gè)數(shù)在(DS:DX+1)中;)中;接收的字符串在(接收的字符串在(DS:DX+2)開始的單元中。)開始的單元中。2022-2-18寧波大學(xué)科技學(xué)院計(jì)算機(jī)系15 輸入前狀態(tài)輸入前狀態(tài) 輸入后狀態(tài)輸入后狀態(tài) 最多字符數(shù)最多字符數(shù) 最多字符數(shù)最多字符數(shù) 實(shí)際輸入數(shù)實(shí)

11、際輸入數(shù) 第一個(gè)字符第一個(gè)字符 最后一個(gè)字符最后一個(gè)字符 2022-2-18寧波大學(xué)科技學(xué)院計(jì)算機(jī)系16例如:接收不超過例如:接收不超過10個(gè)字符的輸入:個(gè)字符的輸入:DATA SEGMENTSTRNG LABEL BYTE;定義字符串起始變量;定義字符串起始變量MAX DB 11;定義最大長(zhǎng)度,包括回車;定義最大長(zhǎng)度,包括回車ACT DB ?;留出實(shí)際長(zhǎng)度返回值空間;留出實(shí)際長(zhǎng)度返回值空間STR DB 11 DUP(?)(?);輸入字符串預(yù)留空間,包括回車;輸入字符串預(yù)留空間,包括回車DATA ENDSCODE SEGMENTLEA DX,STRNG;字符串起始地址送;字符串起始地址送DXM

12、OV AH,0AH;0AH調(diào)用調(diào)用INT 21H;字符串以回車結(jié)束;字符串以回車結(jié)束2022-2-18寧波大學(xué)科技學(xué)院計(jì)算機(jī)系17課堂練習(xí)課堂練習(xí)2鍵盤輸入兩位十進(jìn)制數(shù)鍵盤輸入兩位十進(jìn)制數(shù)X、Y,計(jì)算,計(jì)算X+(Y5)Z,換行輸出換行輸出Z。分析:因?yàn)榉治觯阂驗(yàn)閄、Y是是2位十進(jìn)制數(shù),所以要給他們分別位十進(jìn)制數(shù),所以要給他們分別留出兩個(gè)字節(jié)來存放輸入的留出兩個(gè)字節(jié)來存放輸入的ASCII碼,碼,Z有可能是有可能是3位十進(jìn)制數(shù)據(jù),所以要留位十進(jìn)制數(shù)據(jù),所以要留3個(gè)字節(jié)空間,可以作為字個(gè)字節(jié)空間,可以作為字符串一次輸出。符串一次輸出。程序結(jié)構(gòu):程序結(jié)構(gòu):1、輸入、輸入X、Y2、用、用BCD碼修正計(jì)算碼修正計(jì)算X+(Y-5) Z3、換行、換行4、將、將Z逐位轉(zhuǎn)換為逐位轉(zhuǎn)換為ASCII碼再輸出碼再輸出2022-2-18寧波大學(xué)科技學(xué)院計(jì)算機(jī)系18上機(jī)實(shí)驗(yàn)三說明上機(jī)實(shí)驗(yàn)三說明實(shí)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論