版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
《匯編語(yǔ)言》課內(nèi)實(shí)驗(yàn)報(bào)告學(xué)生姓名 張學(xué)陽(yáng) 1009300132及學(xué)號(hào): 學(xué)院: 理學(xué)院班級(jí): 數(shù)學(xué)101課程名稱: 匯編語(yǔ)言實(shí)驗(yàn)題目: 認(rèn)識(shí)匯編語(yǔ)言集成設(shè)計(jì)環(huán)境指導(dǎo)教師姓名及職稱指導(dǎo)教師姓名及職稱劉力實(shí)驗(yàn)師方向?qū)嶒?yàn)師2012年05月18日一、 實(shí)驗(yàn)題目:認(rèn)識(shí)匯編語(yǔ)言集成設(shè)計(jì)環(huán)境二、 實(shí)驗(yàn)?zāi)康模菏炀氄莆站帉?xiě)匯編語(yǔ)言原程序的基本框架。熟悉在PC機(jī)上編輯、匯編、連接、調(diào)試和運(yùn)行匯編語(yǔ)言程序的過(guò)程。三、 實(shí)驗(yàn)內(nèi)容:一個(gè)匯編語(yǔ)言程序從寫(xiě)出到最終執(zhí)行的簡(jiǎn)要過(guò)程如下:1) 編輯可以用任意的文本編輯器來(lái)編輯源程序,只要最終將其存儲(chǔ)為純文本文件即可。一般保存%*.asm文件。2) 編譯上機(jī)過(guò)程中,我們采用微軟的masm5.0匯編編譯器,文件名為masm.exe。我們的編譯器在C:\masm5日錄下,可以按照下面的過(guò)程來(lái)進(jìn)行源程序的編譯,以C:\1.asm為例:進(jìn)入DOS方式,進(jìn)入C:\masm5日錄,運(yùn)行masm.exe,首先顯示一些版本信息,然后提示輸入將要被編譯的源程序文件名。在輸入源程序文件名時(shí)一定要指明路徑,如果文件在當(dāng)前路徑下,只要輸入文件名就可以,否則要輸入全路徑。在此,我們輸入C:\1.asm.輸入源程序文件名后,程序繼續(xù)提示我們輸入要編譯出的目標(biāo)文件名,因?yàn)槲覀円呀?jīng)輸入了源程序文件名為l.asm,則編譯程序默認(rèn)要輸出的目標(biāo)文件名為l.obj,所以我們可以不必另行指定文件名,直接按回車,編譯程序?qū)⒃诋?dāng)前日錄下,生出l.obj文件。我們也可以指定生成的目標(biāo)文件所在的目錄,如想在“C:\windows\desktop”下生成目標(biāo)文件1.obj,則可以輸入“C:\windows\desktop\1”確定了目標(biāo)文件名稱后,編譯程序提示輸入列表文件名稱和交叉引用文件名稱,這些是編譯器將源程序編譯為目標(biāo)文件過(guò)程中產(chǎn)生的中間結(jié)果,我們直接按回車鍵忽略。對(duì)源程序編譯結(jié)束,編譯器輸出的最后兩行告訴我們?cè)闯绦蚴欠裼芯驽e(cuò)誤和必須要改正的錯(cuò)誤。3)鏈接對(duì)源程序進(jìn)行編譯得到目標(biāo)文件后,需要對(duì)目標(biāo)文件進(jìn)行鏈接得到可執(zhí)行文件。我們使用微軟的OverlayLinker3.6連接器,文件名為link.exe,假設(shè)連接器在C:\masm5日錄下,我們按照下面的過(guò)程來(lái)進(jìn)行程序的鏈接,以C:\masm5\1.obj為例進(jìn)入DOS方式,進(jìn)入C:\masm5日錄,運(yùn)行l(wèi)ink.exe,首先顯示一些版本信息,然后提示輸入將要被連接的目標(biāo)文件名。此處我們輸入”1”,按回車.程序繼續(xù)提示我們輸入要生成的可執(zhí)行文件的名稱,這是我們對(duì)一個(gè)程序進(jìn)行連接要得到的最終結(jié)果。這里我們不必另行指定文件名,直接按回車,鏈接程序?qū)⒃诋?dāng)前日錄下,生成1.exe文件。確定了可執(zhí)行文件的名稱后,連接程序提示輸入映像文件的名稱和庫(kù)文件的連接,我們直接按回車鍵忽略即可。最后對(duì)目標(biāo)文件的連接結(jié)束,連接程序輸出的最后一行告訴我們?cè)闯绦蚴欠裼绣e(cuò)誤。如果盡出現(xiàn)一個(gè)警告錯(cuò)誤:“沒(méi)有棧段",我們可以不理會(huì)。4)執(zhí)行和調(diào)試將生成的可執(zhí)行文件執(zhí)行:C:\masm5>1.exe,看不到任何結(jié)果,因?yàn)槲覀兊某绦驔](méi)有向顯示器輸出信息。為了觀察程序的運(yùn)行過(guò)程,使用Debug的相關(guān)命令來(lái)單步執(zhí)行程序,查看每一條指令的運(yùn)行結(jié)果。進(jìn)入C:\masm5后,我們輸入“Debug1.exe",按Enter鍵,Debug將程序從1.exe中加載到內(nèi)存,進(jìn)行相關(guān)的初始化后設(shè)置CS:IP指向程序的入口。使用R命令查看各個(gè)寄存器的設(shè)置情況,使用U命令來(lái)查看我們寫(xiě)入的指令,使用丁命令單步執(zhí)行程序中的每一條指令,到達(dá)int21,使用P命令執(zhí)行,執(zhí)行后,顯示“Programterminatednormally”,返回到Debug,表示程序正常結(jié)束。注意:在DOS中運(yùn)行程序時(shí),是Command將程序加載到內(nèi)存,所以程序運(yùn)行結(jié)束后返回到command中,而在這里是debug將程序加載到內(nèi)存,所以程序運(yùn)行結(jié)束后返回到debug中。5)將下面的源程序代碼保存為hello.asm文件,生成可執(zhí)行文件hello.exe;;一個(gè)顯示HelloWorld!程序DATASSEGMENTSTRINGDB'HelloWorld!',13,10,'$'DATASENDSCODESSEGMENTASSUMECS:CODES,DS:DATASORG100HSTART:MOVAX,DATASMOVDS,AXLEADX,STRINGMOVAH,9INT21HMOVAH,4CHINT21H
CODESENDSENDSTARTCODESENDSENDSTART6)用Debug跟蹤hello.exe的執(zhí)行過(guò)程,寫(xiě)出每一步執(zhí)行后相關(guān)寄存器中的內(nèi)容四、實(shí)驗(yàn)結(jié)果:licrosoftUindousXP_5.1.2600]<C>版權(quán)所有1985-2001MicrosoftCorp.C:\DocumentsandSettingsSAdministrator>cdXC-\>cdmasm5C:\nasn5>masmlicrosoft<R>MacroAssemblerUersion5.10Copyright<C>MicrosoftCorp1981,1988.Allrightsreserued.SourcefilenameObjectfilenameSourcefilenameObjectfilenameSourcelistingCross-reference[.ASM]:hello.asm[hello.OBJ]:[NUL.LST]:[NUL.CRF]:47936+411035Bytessymbolspacefree47936UarningErrorsSeuereErrorsC:\masfi5>Microsoft<R>OuerlayLinkerUersion3.64Copyright<C>MicrosoftCorp1983-1988.Allrightsreserued.RunFile[HELLO.EKE]:ListFile[NUL.MAP3:Libraries[.LIB]:LINK:uarningL4021:nostacksegmentC:Xmasm5>dirUolumeindriueCliasnolabe1.UoluneSerialNumberis7CAE-B72DDirectoryofC:\masni52012-05-1815:01<DIR>2012-05-1815:01<DIR>1988-02-0113:0065,475LINK.EXE1988-02-0113:00110,703MASM.EXE2010-11-0121:39332hello.asm2012-05-1815:04130ASM.OBJ2012-05-1815:06130HELLO.OBJ2012-05-1815:09801HELLO.EKE6File<s>177,571bytes2Dir<s>26,377,289,728bytesfree::\nasm5>hello.exeelloWorld*
14AB:0100B8AA14MOUAX,14AA-u14AB:0100B8AA14MOUAX,14AA14AB:01038ED8MOUDS,AX14AB:01058D160000LEADX,[0000]14AB:0109B409MOUAH,0914AB:010BCD21INI2114AB:010DB44CMOUAH,4C14AB:010FCD21INI2114AB:01110D83C4ORAX,C48314AB:011404C?ADDAL,C?14AB:011686FEXCHGBH,DH14AB:0118FE00INCB¥TEPTR[BX+SI]14AB:011A00EBADDBL,CH14AB:011C0590FFADDfiX,FF9014AB:011F86FEXCHGBH,DHC:Xmasm5>debu.ghello.exe-rAX=0000BX=0000CX=0121DS=149AES=149ASS=14AAt:=14AADS=149A14AB:0103BX=0000ES=149A8EDSCX=0121SS=14AAMOUDX=0000CS=14ABDS,SF=0000IP=0103AXBP=0000NUUPEl81=0000DI=0000PLNZNAPONCAX=14AADS=14AA14AB:0105BX=0000CX=0121ES=149ASS=14AA8D160000 LEADX=0000CS=14ABDX,SF=0000IP=0105[0000]BP=0000NUUPEl81=0000DI=0000PLNZNAPONCDS:0000=6548AX=14AADS=14AA14AB:0109BX=0000ES=149AB409CX=0121SS=14AAMOUDX=0000CS=14ABAH,SF=0000IP=010909BP=0000NUUPEl81=0000DI=0000PLNZNAPONCAX=09AADS=14AA14AB:010EBX=0000ES=149ACD21CX=0121SS=14AAINTDX=0000CS=14AB21SF=0000IP=010BBP=0000NUUPEl81=0000DI=0000PLNZNAPONCDX=0000SF=0000BP=0000SI=0000DI=0000CS=14ABIP=0100NUUPElPLNZNAPONCAX=0924DS=14AAES=149A14AB:010DB44C-tCX=0121DK=0000SP=0000SS=14AACS=14ABIP=010DMOUAH,4CDX=0000SF=0000BP=0000SI=0000DI=0000CS=14ABIP=0100NUUPElPLNZNAPONCAX=0924DS=14AAES=149A14AB:010DB44C-tCX=0121DK=0000SP=0000SS=14AACS=14ABIP=010DMOUAH,4CBP=0000SI=0000DI=0000
NUUPElPLNZNAPONCAX=4C24DS=14AAES=149A14AB:010FCD21CX=01
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 陶瓷材料環(huán)?;厥?洞察分析
- 隱私保護(hù)算法優(yōu)化策略-洞察分析
- 睡眠質(zhì)量預(yù)測(cè)與改善-洞察分析
- 2025年外研版三年級(jí)起點(diǎn)選修化學(xué)下冊(cè)階段測(cè)試試卷含答案
- 藥品銷售渠道風(fēng)險(xiǎn)控制-洞察分析
- 2025年北師大版九年級(jí)科學(xué)下冊(cè)階段測(cè)試試卷
- 魚(yú)肝油乳與重金屬污染關(guān)系-洞察分析
- 2025年滬教新版八年級(jí)生物下冊(cè)階段測(cè)試試卷含答案
- 2025年滬科版九年級(jí)化學(xué)下冊(cè)月考試卷含答案
- 2025年人教版PEP三年級(jí)英語(yǔ)上冊(cè)階段測(cè)試試卷含答案
- 國(guó)家自然科學(xué)基金項(xiàng)目申請(qǐng)書(shū)
- 電力電纜故障分析報(bào)告
- 中國(guó)電信網(wǎng)絡(luò)資源管理系統(tǒng)介紹
- 2024年浙江首考高考選考技術(shù)試卷試題真題(答案詳解)
- 《品牌形象設(shè)計(jì)》課件
- 倉(cāng)庫(kù)管理基礎(chǔ)知識(shí)培訓(xùn)課件1
- 藥品的收貨與驗(yàn)收培訓(xùn)課件
- GH-T 1388-2022 脫水大蒜標(biāo)準(zhǔn)規(guī)范
- 高中英語(yǔ)人教版必修第一二冊(cè)語(yǔ)境記單詞清單
- 政府機(jī)關(guān)保潔服務(wù)投標(biāo)方案(技術(shù)方案)
- HIV感染者合并慢性腎病的治療指南
評(píng)論
0/150
提交評(píng)論