



下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、.實驗四:分支、循環(huán)程序設(shè)計一. 實驗?zāi)康? 學(xué)習(xí)分支程序、循環(huán)結(jié)構(gòu)程序的設(shè)計和調(diào)試方法;2 學(xué)習(xí)子程序的定義和調(diào)試方法;3 掌握分支、循環(huán)、子程序等程序的基本結(jié)構(gòu)。二. 實驗設(shè)備TDN 86/51或 TDN 86/88教學(xué)實驗系統(tǒng)一臺 三. 實驗內(nèi)容、步驟及要求1. 設(shè)計一數(shù)據(jù)塊間的搬移程序數(shù)據(jù)塊搬移的基本原則為:對于兩個分離的數(shù)據(jù)塊,從首地址或從末地址開始傳送均可。對于有部分重疊的情況則:當(dāng)源數(shù)據(jù)塊首地址目的數(shù)據(jù)塊首地址時,從數(shù)據(jù)塊首地址開始傳送數(shù)據(jù)。當(dāng)源數(shù)據(jù)塊首地址目的數(shù)據(jù)塊首地址時,從數(shù)據(jù)塊末地址開始傳送數(shù)據(jù)。2求某數(shù)據(jù)區(qū)內(nèi)負(fù)數(shù)的個數(shù)設(shè)數(shù)據(jù)區(qū)的第一單元存放區(qū)內(nèi)單元數(shù)據(jù)的個數(shù),從第二單元
2、開始存放數(shù)據(jù),在區(qū)內(nèi)最后一個單元存放結(jié)果。為統(tǒng)計數(shù)據(jù)區(qū)內(nèi)負(fù)數(shù)的個數(shù),需要逐個判斷區(qū)內(nèi)的每一個數(shù)據(jù),然后將所有數(shù)據(jù)中凡是符號位為1的數(shù)據(jù)的個數(shù)累加起來,即得區(qū)內(nèi)所包含負(fù)數(shù)的個數(shù)。3學(xué)生成績名次表將分?jǐn)?shù)為1100之間的10個成績存入首址為3000H的單元中,3000H+I表示學(xué)號為I的學(xué)生成績。編寫程序能在3100H開始的區(qū)域排出名次表,3100H+I為學(xué)號I的學(xué)生名次。 4. 求無符號字節(jié)序列中的最大值和最小值設(shè)有一字節(jié)序列,其存儲首地址為3000H,字節(jié)數(shù)為08H。利用子程序的方法編程求出該序列中的最大值和最小值。四. 編程練習(xí)(A) 在3500H單元開始中輸入數(shù)據(jù):09H(數(shù)據(jù)個數(shù))12H、
3、80H、78H、C8H、00H、00H、FEH、99H、34H,編寫程序使其能分別求出數(shù)據(jù)區(qū)中的正數(shù)和負(fù)數(shù)以及零的個數(shù),正數(shù)的個數(shù)放在3510H單元中,負(fù)數(shù)的個數(shù)放在3511H單元中,零的個數(shù)放在3512H單元中.(B) 有三個8位二進制數(shù)連續(xù)存放在03200H開始的內(nèi)存單元中,設(shè)它們之中至少有兩個數(shù)是相同的。編寫程序找出與另外兩數(shù)不同的數(shù),把該數(shù)所在的地址(段內(nèi)偏移地址)送到03204H單元,若三個數(shù)都相同則送0FFFFH到03204H單元。(C) 設(shè)數(shù)據(jù)段SCORE單元開始連續(xù)存放著20個學(xué)生成績,編寫程序統(tǒng)計其中90分?jǐn)?shù)段的人數(shù),并把統(tǒng)計結(jié)果存放到從TOT開始的數(shù)據(jù)塊中。(數(shù)據(jù)為:64H
4、,61H,5DH,55H,52H,51H,44H,45H,47H,48H,4DH,4FH,3CH,3FH,40H,41H,33H,56H,59H,30H).(D) 找出一個數(shù)據(jù)塊中的最大數(shù)。數(shù)據(jù)塊從偏移地址3002H開始存放,數(shù)據(jù)塊的長度以16位二進制形式存放在3000H、3001H單元,把找出的最大數(shù)放到3100H單元中,并把存放最大值的偏移地址存入3101H和3102H的存儲單元中。假設(shè)數(shù)據(jù)塊中的數(shù)都是8位無符號數(shù)。(E) 的值(字節(jié)數(shù))分別由3000H、3001H、3002H單元的數(shù)決定,對應(yīng)的結(jié)果分別存放在3005H、3006H、3007H單元中,完成下列方程: A (X0)Y= 0
5、(X=0) B (X200)Y= 50H (X=100) 00H (X50)五軟件流程圖和程序清單A)DATAS SEGMENTORG 3500H BUFSIZE DB 9 ;單元數(shù)據(jù)個數(shù) NUM DB 12H,80H,78H,0C8H,00H,00H,0FEH,99H,34H ORG 3510H RESULT DB 3 DUP(0,0,0)DATAS ENDSCODES SEGMENT ASSUME CS:CODES,DS:DATASSTART: MOV AX,DATAS MOV DS,AX MOV DI,OFFSET NUM ;送數(shù)據(jù)地址到DI LEA BP,RESULT MOV SI,0
6、0H MOV CX,3500H ;循環(huán)次數(shù)AGAIN:TEST BYTE PTRDI,80H JZ COUNT ;ZF=1,此數(shù)據(jù)為非負(fù)數(shù),轉(zhuǎn)移 INC BYTE PTRBP+1 ;ZF=0,此數(shù)據(jù)為負(fù)數(shù) JMP DONECOUNT:CMP BYTE PTRDI,01H JNC NEXT INC BYTE PTRBP+2 ;CF=1,此數(shù)據(jù)為0 JMP DONENEXT: INC BYTE PTRBP ;CF=0,此數(shù)據(jù)為正數(shù)DONE: INC DI LOOP AGAIN MOV AH,4CH INT 21HCODES ENDSEND START【調(diào)試說明】由圖可見:正數(shù)個數(shù)為3,負(fù)數(shù)個數(shù)為4
7、,零的個數(shù)為2。與答案相符C)DATAS SEGMENT ORG 3700H SCORE DB 64H,61H,5DH,55H,52H,51H,44H,45H,47H,48H, 4DH,4FH,3CH,3FH,40H,41H,33H,56H,59H,30H ORG 3720H TOT DB 5 DUP(0,0,0,0,0) DATAS ENDSCODES SEGMENT ASSUME CS:CODES,DS:DATASSTART: MOV AX,DATAS MOV DS,AX MOV CX,20 ;循環(huán)次數(shù) MOV SI,OFFSET SCORE ;分?jǐn)?shù)首地址送SIBBB:MOV BP,OFF
8、SET TOT MOV AL,BYTE PTRSI CLC CMP AL,60 JNB S70 ;CF=0,大于60跳轉(zhuǎn) JMP DONES70: INC BP CMP AL,70 JNB S80 ;CF=0,大于70跳轉(zhuǎn) JMP DONES80: INC BP CMP AL,80 JNB S90 ;CF=0,大于80跳轉(zhuǎn) JMP DONES90: INC BP CMP AL,90 JNB S100 ;CF=0,大于90跳轉(zhuǎn) JMP DONES100: INC BPDONE:INC BYTE PTRBP ;對應(yīng)分?jǐn)?shù)段人數(shù)加1 INC SI LOOP BBB MOV AH,4CH INT 21H
9、CODES ENDSEND START【調(diào)試說明】由圖可見:90分?jǐn)?shù)段的人數(shù)分別為2個,6個,4個,5個,3個,與答案相符。D) DATAS SEGMENT ORG 3000H LEN DW 0020HNUM DB 12H,34H,34H,54H,65H,65H,53H,55H,09H,69H,0FCH,65H,0AAH,0FBH,98H,88H, 0C3H,44H,12H,12H,45H,45H,76H,76H,32H,32H,76H,76H,0B7H,86H,21H,09H ORG 3030H MAX DB ? ADDRESS DW ?DATAS ENDSCODES SEGMENT ASS
10、UME CS:CODES,DS:DATASSTART: MOV AX,DATAS MOV DS,AX LEA SI,NUM MOV AL,00H MOV CX,LEN ;循環(huán)次數(shù) MOV ADDRESS,3002H CLC BBB: CMP AL,BYTE PTRSI ;講AL中數(shù)據(jù)與(SI)中數(shù)據(jù)比較 JNB NEXT CLC ;CF=1,CF清零,記錄數(shù)據(jù)地址 MOV AL,BYTE PTRSI MOV ADDRESS,SINEXT:INC SI LOOP BBB MOV MAX,AL ;將AL中最大數(shù)存入指定地址 MOV AH,4CH INT 21HCODES ENDS END START【調(diào)試說明】由圖可見:最大數(shù)為FC
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 幼兒園實習(xí)老師聘用合同協(xié)議
- 區(qū)域戰(zhàn)略合作框架合同
- 房屋買賣合同補充協(xié)議書
- 企業(yè)短期借款合同協(xié)議
- 裝飾裝修材料供需合同范本
- 廣告公司員工培訓(xùn)合同范本
- 水資源綜合利用工程合同書
- 道路交通事故雙方和解合同書
- 農(nóng)業(yè)觀光園土地租賃合同
- 小學(xué)生每日教育課件
- 資產(chǎn)運營總經(jīng)理崗位職責(zé)
- 2024-2025學(xué)年新教材高中英語 Unit 6 Earth first理解 課文精研讀教案 外研版必修第二冊
- 110kV變電站專項電氣試驗及調(diào)試方案
- 2024時事政治必考試題庫(預(yù)熱題)
- DZ∕T 0215-2020 礦產(chǎn)地質(zhì)勘查規(guī)范 煤(正式版)
- 威圖電柜空調(diào)SK3304500使用說書
- 品質(zhì)部組織架構(gòu)圖構(gòu)
- 《無損檢測》緒論
- 中藥飲片的銷售方案
- 2024年湖南省普通高中學(xué)業(yè)水平考試政治試卷(含答案)
- 《創(chuàng)意設(shè)計》課程標(biāo)準(zhǔn)
評論
0/150
提交評論