




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
數(shù)據(jù)傳送程序設(shè)計一、實驗?zāi)康模簩W(xué)習(xí)數(shù)據(jù)傳送的用法以及與數(shù)據(jù)有關(guān)的不同尋址方式。熟悉匯編語言程序的上機運行過程。學(xué)會使用DEBUG命令調(diào)試程序。二、實驗儀器:1〕儀器:英特爾586配置以上電腦一臺,內(nèi)存512MB以上,windowsxp操作系統(tǒng)。2〕軟件:MASM5.0匯編軟件或者EMU8086三、實驗內(nèi)容:1)將40個字母A的字符串從源緩沖區(qū)傳送到目的緩沖區(qū)。2)將26個小寫英文字母存放到數(shù)據(jù)段1偏移地址為2000H單元開始的內(nèi)存中,然后轉(zhuǎn)換成大寫字母并傳送到數(shù)據(jù)段2以3000H單元開始的存儲區(qū)。四、實驗步驟:點擊電腦的“開始”—》“運行”,輸入“CMD”,翻開DOS系統(tǒng)界面通過CD命令進入MASM軟件目錄使用edit命令編輯程序〔程序清單見〕C:\MASM>EDITfilename.ASM(enter)〔filename可以自己隨意命名〕4〕使用masm和link命令對程序進行匯編,連接。C:\MASM>MASMfilename.asm(enter)C:\MASM>linkfilename.obj(enter)5〕使用Debug命令調(diào)試程序,觀察調(diào)試過程中數(shù)據(jù)傳輸指令執(zhí)行后各存放器及數(shù)據(jù)區(qū)的內(nèi)容。C:\MASM>DEBUGfilename.EXE屏幕上出現(xiàn)一個短劃線。為了確定我們所要設(shè)定的斷點地址,常常用到反匯編命令,反匯編命令格式如下:--U;從當(dāng)前地址開始反匯編用G命令來設(shè)置斷點。比方想把斷點設(shè)置在301CH處,那么如下打入命令:—G301C;程序在0120H處停下,并顯示出所有存放器以及各標(biāo)志位的當(dāng)前值,在最后一行還給出下一條將要執(zhí)行的指令的地址、機器語言和匯編語言,可以從顯示的存放器的內(nèi)容來了解程序運行是否正確。對于某些程序段,單從存放器的內(nèi)容看不到程序運行的結(jié)果,而需要觀察數(shù)據(jù)段的內(nèi)容,此時可用D命令,使用格式如下:—DDS:0000;從數(shù)據(jù)段的O單元開始顯示128個字節(jié)—t單步執(zhí)行—R查看存放器的值—Q;退出五、程序清單:程序1:datasegment ;數(shù)據(jù)段的定義source_bufferdb40dup('A')dataends;**************extrasegment ;附加段的定義dest_bufferdb40dup(?)extraendscodesegmentorg0100h ;程序首地址assumecs:code,ds:data,es:extrastart:pushds subax,ax pushax movax,data movds,ax movax,extra moves,ax leasi,source_buffer leadi,dest_buffer Cld movcx,40 repmovsb movah,4ch int21h codeends endstart程序2:data1segment ;定義數(shù)據(jù)段1 org2000h ;變量存放至數(shù)據(jù)段2000h單元 source_bufferdb26dup(?) ;預(yù)留26個字節(jié)單元data1endsdata2 segment org3000h dest_buffer1db26dup(?)data2 endsextra segment dest_buffer2db26dup(?)extra endscode segment org0100hassume cs:code,ds:data1,ds:data2,es:extrastart:movax,data1 movds,ax leasi,source_buffermovax,'a' movcx,26xiao:mov[si],axincsiincaxloopxiao leadi,dest_buffer2 cld movcx,26 movax,extramoves,ax leasi,source_bufferda1: lodsb ;源串DS:SI中數(shù)據(jù)送axsubax,20h ;將字符串轉(zhuǎn)換為大寫字母stosb ;ax內(nèi)容送ES:DI loopda1 movax,data2 movds,ax leadi,dest_buffer1 leasi,dest_buffer2 movcx,26da2: movax,es:[si] mov[di],axincsiincdiloopda2 movax,movah,4ch int21hcode ends 程序2流程圖end start六、實驗結(jié)果及分析:圖1程序1實驗結(jié)果圖2程序2實驗結(jié)果實驗結(jié)果分析:圖1中字母送入數(shù)據(jù)段及附加段以0000H為偏移段首址的同時,在以1459:0030段開始的數(shù)據(jù)段也送入了相同的數(shù)據(jù),這是因為1459:0030與145C:0000對應(yīng)相同的物理地址,即14590H+0030H=145C0H+0000H=145C0H。圖2中顯示大寫字母與小寫字母存放在不同數(shù)據(jù)段,這是因為程序中先將小寫字母送入以偏移地址為2000H單元開始的數(shù)據(jù)段1,此時該數(shù)據(jù)段段基址為1461H,然后編寫程序?qū)⑿懽帜皋D(zhuǎn)換成大寫字母送入附加段中暫存,最后將附加段中的數(shù)據(jù)傳送至偏移地址為3000H開始的數(shù)據(jù)段2,此時的段基址為1663H。
七、實驗思考與總結(jié):思考:如果不用串操作指令,該如何修改程序?圖3思考題實驗結(jié)果思考題采用傳送指令與循環(huán)控制語句實現(xiàn)了字符串的傳送操作,這種方法相比串操作指令簡單容易理解,但是不適合大批量無規(guī)律數(shù)據(jù)操作。實驗總結(jié):本次數(shù)據(jù)傳送實驗驗證了數(shù)據(jù)的
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 班級自我管理提升計劃
- 急診安全文化建設(shè)實踐計劃
- 實驗室安全規(guī)范與培訓(xùn)計劃
- 學(xué)校教學(xué)活動安排計劃
- 秘書在團隊溝通中的角色計劃
- 小班三維課程與教育理念實踐計劃
- 2025年美司那項目建議書
- 2025年中國異構(gòu)計算行業(yè)市場運行態(tài)勢及發(fā)展趨勢預(yù)測報告-智研咨詢發(fā)布
- 2025年多通道腦電圖機項目建議書
- 淮安市2024-2025學(xué)年上學(xué)期高一期末考試地理試題(含答案)
- DB32-T 3129-2016適合機械化作業(yè)的單體鋼架塑料大棚 技術(shù)規(guī)范-(高清現(xiàn)行)
- 《花婆婆》兒童繪本故事
- DB44∕T 2149-2018 森林資源規(guī)劃設(shè)計調(diào)查技術(shù)規(guī)程
- 數(shù)據(jù)結(jié)構(gòu)英文教學(xué)課件:chapter10 Hashing
- 藍(lán)色卡通風(fēng)學(xué)生班干部競選介紹PPT模板課件
- 人教新目標(biāo)英語九年級上冊單詞中文Units
- 機動車牌證申請表格模板(完整版)
- 《國家電網(wǎng)公司十八項電網(wǎng)反事故措施(試行)》實施細(xì)則
- 鋼絲網(wǎng)架珍珠巖夾心板安裝方法
- 工藝管廊架施工方案
- 六宮格數(shù)獨解題技巧
評論
0/150
提交評論