版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上 匯編語言實(shí)驗(yàn)報(bào)告(實(shí)驗(yàn)三)一. 實(shí)驗(yàn)?zāi)康?. 掌握程序設(shè)計(jì)中的子程序結(jié)構(gòu);2. 熟練使用過程偽指令、子程序調(diào)用和返回等匯編語言的指令編寫子程序;3. 掌握數(shù)制轉(zhuǎn)換方法;4. 掌握利用DOS系統(tǒng)功能調(diào)用進(jìn)行字符輸入及字符輸出(顯示)的方法。二. 程序說明1 編寫十進(jìn)制到十六進(jìn)制轉(zhuǎn)換程序。要求從鍵盤取得一個(gè)十進(jìn)制數(shù),然后把該數(shù)以十六進(jìn)制形式在屏幕上顯示出來2 已知從BUF開始存放了10個(gè)16進(jìn)制字?jǐn)?shù)據(jù),編程求出這10個(gè)數(shù)中的最大數(shù),(將最大數(shù)存入MAX字節(jié)單元),并將其以10進(jìn)制數(shù)的形式在屏幕上顯示出來。 (提示:以上兩題都要求采用子程序的方法)3 從鍵盤上輸入一行字符
2、,如果這行字符比前一次輸入的一行字符長度長,則保存該行字符,然后繼續(xù)輸入另一行字符;如果它比前一次輸入的行短,則不保存這行字符。按下$輸入結(jié)束,最后將最長的一行字符顯示出來。(選作) (提示:定義數(shù)據(jù)段,包括兩個(gè)變量STRING和BUFFER,格式如下: STRINGDB 0;存放字符的個(gè)數(shù)DB 80 DUP (?), 0DH,0AH,$ ;存放前一次輸入的字符串,兼作顯示緩沖區(qū)BUFFERDB 80;輸入字符串的緩沖區(qū),最多輸入80個(gè)字符DB?DB80 DUP (20H) 然后利用0AH號(hào)DOS系統(tǒng)功能調(diào)用收入字符,用09H號(hào)系統(tǒng)功能調(diào)用輸出。)三. 設(shè)計(jì)思想1. 先調(diào)用子函數(shù)decibin
3、由鍵盤輸入一個(gè)數(shù)字后,先減去30h把ASCII碼形式轉(zhuǎn)換為十進(jìn)制數(shù)形式,保存在bx中,再調(diào)用子函數(shù)binihex,用十六進(jìn)制形式顯示bx中的數(shù)。2.利用子函數(shù)max依次比較,將buf中10個(gè)字的最大值放到bx中,再一次除以10000,1000,100,10,并分別把余數(shù)放到bx,商放到dl,并轉(zhuǎn)換為ASCII碼格式,即把十六進(jìn)制轉(zhuǎn)為10進(jìn)制,最后調(diào)用2號(hào)功能輸出結(jié)果即可。3.調(diào)用0ah功能,將輸入字符放到緩沖區(qū),并把之后輸入的字符串依次與緩沖區(qū)內(nèi)容相比較,若小于緩沖區(qū)內(nèi)容,則被替換,直到輸入$即停止輸入字符串為止,輸出最終存放在string中的字符串的內(nèi)容。四. 程序代碼1.輸入10進(jìn)制轉(zhuǎn)換為
4、16進(jìn)制輸出data segment Str1 db 0DH,0AH,'Please input a number: ','$' Str2 db 0DH,0AH,'Trans:','$' data ends decihex segment assume cs:decihex,ds:data main proc far push ds sub ax,ax push ax mov ax,data mov ds,axrepeat: lea dx,Str1 mov ah,09 int 21h call decibin lea dx,Str
5、2 mov ah,09 int 21h call binihex mov dl,0ah ;換行 mov ah,2 int 21h jmp repeatmain endpdecibin proc near mov bx,0newchar: mov ah,1 int 21h sub al,30h jl exit cmp al,9d jg exit cbw xchg ax,bx mov cx,10d mul cx xchg ax,bx add bx,ax jmp newchar exit: retdecibin endpbinihex proc near mov ch,4rotate: mov cl
6、,4 rol bx,cl mov al,bl and al,0fh add al,30h cmp al,3ah jl printit add al,7hprintit: mov dl,al mov ah,2 int 21h dec ch jnz rotate retbinihex endpdecihex ends end main2.data segmentbuf dw 05h,0fh,15h,1fh,45h,25h,2ah,32h,3ah,3fhdata endscode segmentassume cs:code,ds:datamain proc farstart:mov ax,datam
7、ov ds,axcall maxcall conveymov ax,4c00hint 21hmain endpmax proc nearmov bx,0mov cl,10mov ax,bufbxrepeat:add bx,2cmp ax,bufbxjg greatermov ax,bufbxgreater: loop repeatmov bx,axretmax endpconvey proc nearmov cx,10000dcall dividmov cx,1000dcall dividmov cx,100dcall dividmov cx,10dcall dividmov cx,1dcal
8、l dividretconvey endpdivid proc nearmov ax,bxmov dx,0div cxmov bx,dxmov dl,aladd dl,30hmov ah,2int 21hretdivid endpcode endsend start3.data segmentSTRINGDB 0;存放字符的個(gè)數(shù)DB 80 DUP (?), 0DH,0AH,'$' ;存放前一次輸入的字符串,兼作顯示緩沖區(qū)BUFFERDB 82;輸入字符串的緩沖區(qū),最多輸入80個(gè)字符DB?DB80 DUP (?)out db 0dh,0ah,'Longest string
9、:','$'data endscode segment assume cs:code,ds:data,es:datamain proc farstart:mov ax,datamov ds,axmov es,axrepeat:mov ah,02hmov dl,0dhint 21hmov ah,02hmov dl,0ahint 21hlea dx,buffermov ah,0ahint 21hmov al,buffer2cmp al,'$'jnz comparejmp outputcompare:mov al,buffer1cmp al,string0jl repeatmov string,allea si,buffer2lea di,string1mov cl,buffer1sub ch,chcldrep
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 上海市金山區(qū)華東師大三附中2013-2014學(xué)年高一下學(xué)期期末考試數(shù)學(xué)試題
- 【全程復(fù)習(xí)方略】2020年人教A版數(shù)學(xué)理(福建用)課時(shí)作業(yè):第三章-第八節(jié)應(yīng)-用-舉-例
- 學(xué)校的八年級(jí)的班級(jí)工作計(jì)劃范文
- 陜西省渭南市2025屆高三教學(xué)質(zhì)量檢測(cè)(Ⅰ)物理試題(含答案)
- 四川省綿陽市綿陽中學(xué)2024-2025學(xué)年高一上學(xué)期期末模擬測(cè)試物理試題(含答案)
- 【備戰(zhàn)2021高考】全國2021屆高中英語試題匯編(第六期-11月):U單元-重慶
- 【名師一號(hào)】2022屆高三歷史一輪復(fù)習(xí)調(diào)研試題:第七單元-古代中國經(jīng)濟(jì)的基本結(jié)構(gòu)與特點(diǎn)7-13a
- 【走向高考】2021屆高三生物二輪復(fù)習(xí)專項(xiàng)檢測(cè):專題4-第3講-變異、育種與生物進(jìn)化
- 一年級(jí)數(shù)學(xué)計(jì)算題專項(xiàng)練習(xí)匯編
- 【名師一號(hào)】2020-2021學(xué)年蘇教版化學(xué)檢測(cè)題-選修五:專題3
- “銷售技巧課件-讓你掌握銷售技巧”
- 2019北師大版高中英語選修一UNIT 2 單詞短語句子復(fù)習(xí)默寫單
- 房地產(chǎn)項(xiàng)目保密協(xié)議
- 2023年云南省初中學(xué)業(yè)水平考試 物理
- 【安吉物流股份有限公司倉儲(chǔ)管理現(xiàn)狀及問題和優(yōu)化研究15000字(論文)】
- 火災(zāi)自動(dòng)報(bào)警系統(tǒng)施工及驗(yàn)收調(diào)試報(bào)告
- 《13464電腦動(dòng)畫》自考復(fù)習(xí)必備題庫(含答案)
- 中國成人血脂異常防治指南課件
- 2023塔式太陽能熱發(fā)電廠集熱系統(tǒng)設(shè)計(jì)規(guī)范
- 消費(fèi)稅改革對(duì)商貿(mào)企業(yè)的影響與對(duì)策
- 識(shí)別藥用植物種類-識(shí)別藥用被子植物
評(píng)論
0/150
提交評(píng)論