




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、匯編語言實驗報告得分: 班級*姓名*學(xué)號*實驗名稱搭建開發(fā)環(huán)境實驗室號*實驗?zāi)康拇罱▍R編語言的開發(fā)環(huán)境,熟悉匯編程序開發(fā)的基本步驟,掌握基本的調(diào)試操作。實驗要求基于VISUAL STUDIO 平臺,結(jié)合MASM32的匯編器,構(gòu)建IA-32匯編語言的開發(fā)環(huán)境。實驗內(nèi)容1) VC6平臺下的匯編語言開發(fā)環(huán)境搭建(使用MASM32的匯編器+VC6)配置IDE環(huán)境: 在VC的tools/option/Directories頁面中添加Irvine32.inc等所在的目錄到include files中; 添加Irvine32.lib等所在的目錄到library files. 將masm32中的ml.exe和
2、ml.err拷貝到VC的Microsoft Visual StudioVC98Bin目錄中創(chuàng)建與配置project: 新建VC的win32 console類型空工程 創(chuàng)建一個asm后綴的文件,并把匯編代碼(教材第85頁addsub3.asm)輸入該文件中,然后將該asm文件添加到Source Files 選中asm文件,在project settings/Custom Build頁面中命令行加:ml /c /coff /Fo$(TargetDir)$(InputName).obj $(InputPath) 輸出中加上:$(TargetDir)$(InputName).obj “Project
3、setting”頁面的”link”選項卡中“object/library module ”中加入irvine32.lib2) 匯編與鏈接不帶輸出的加減法程序(即教材第85頁addsubTest.asm);3) 在程序最后加入調(diào)用DumpRegs過程的語句,以輸出各寄存器的值。4) 以單步執(zhí)行的方式調(diào)試該程序,查看每步結(jié)果,并解釋每步結(jié)果,并寫成注釋。(特別注意對標(biāo)志位的影響)5) (可選)嘗試修改程序。6) (可選)單步跟蹤課件中節(jié)的程序“ptr應(yīng)用示例”,結(jié)合VC6的內(nèi)存查看功能(通過菜單viewàdebug windowsàMemory調(diào)出內(nèi)存查看窗口)理解每步的執(zhí)行結(jié)
4、果。(注意課件中只是大部分代碼,請補全頭文件以及程序退出宏。)一、配置IDE環(huán)境:1、 添加Irvine32.lib等所在的目錄到library files;2、 添加添加Irvine32.inc等所在的目錄到include files中;3. 將masm32中的ml.exe和ml.err拷貝到VC的Microsoft Visual StudioVC98Bin目錄中二、創(chuàng)建與配置project:2.編輯教材85頁不帶輸出的程序代碼如下:.386.model flat,stdcall.stack 4096ExitProcess PROTO, dwExitC
5、ode:DWORDDumpRegs PROTO.dataRval SDWORD ?Xval SDWORD 26Yval SDWORD 30Zval SDWORD 40.codemain PROCmov ax,1000h inc axdec axmov eax,Xvalneg eaxmov ebx,
6、Zvaladd eax,ebxmov Rval,eaxmov cx,1sub cx,1mov ax,0FFFFhinc axmov cx,0sub cx,1mov ax,7FFFhadd ax,2mov al,0FFhadd al,1mov al,+127add al,1mov &
7、#160;al,-128sub al,1call DumpRegsINVOKE ExitProcess,0main ENDPEND main結(jié)果:3. 輸出各寄存器的值。DumpRegs PROTO程序最后加入調(diào)用DumpRegs過程的語句call DumpRegs 輸出結(jié)果如下:4.單步執(zhí)行的方式調(diào)試該程序,查看每步結(jié)果,并解釋每步結(jié)果,并寫成注釋。(特別注意對標(biāo)志位的影響)1、按F10進行調(diào)試、alt+F5調(diào)出寄存器的變化信息框。程序及標(biāo)志位解讀如下:.386.model flat,stdcall.stack 4096ExitP
8、rocess PROTO, dwExitCode:DWORDDumpRegs PROTO.dataRval SDWORD ?Xval SDWORD 26Yval SDWORD 30Zval SDWORD 40.codemain PROCmov ax,1000h /ax 4096 ;bx 57344;inc ax /ax 4097;bx 57344(實現(xiàn)自增)dec ax/ax 4096;bx 57344(實現(xiàn)自減)mov eax,Xval /把Xval復(fù)制給eaxneg eax /ax 26;bx 57344(取反 令ax=-26)mov ebx,Zvalv /ax 65510 ;bx 40
9、;cx(把Zval的40賦給ebx)add eax,ebx / ax 14 ;bx 40 (求和eax=ebx+eax=14)mov Rval,eax/把eax復(fù)制給Rvalmov cx,1 /ax=14;bx=40;cx=1sub cx,1mov ax,0FFFFhinc ax/ax 65535;bx=10;cx=0;mov cx,0sub cx,1mov ax,7FFFhadd ax,2 /ax 32767 bx=40 cx =65535mov al,0FFh/ax 32769 add al,1 /ax 33023 add al,1 /ax 32768mov al,-128 /ax 32895sub al,1 /ax 32896call DumpRegs /ax 32895INVOKE ExitProces
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 5.1 物體的質(zhì)量說課稿 2025年初中物理八年級上冊
- 2025年全自動流體包裝設(shè)備項目發(fā)展計劃
- 2025年黨員領(lǐng)導(dǎo)干部學(xué)法用法知識考試模擬試題及答案(共七套)
- 街道物業(yè)態(tài)發(fā)言材料
- 外國禮儀合作協(xié)議
- 1例尖吻蝮咬傷致腦梗死應(yīng)用阿替普酶溶栓的臨床效果分析
- 《深度學(xué)習(xí)項目案例開發(fā)》課件-任務(wù)五:使用遷移學(xué)習(xí)完成垃圾分類
- 2025年度北京市城市綠化養(yǎng)護項目勞動合同范本
- 危險品運輸司機合作協(xié)議
- 快遞物流高效配送調(diào)度策略
- GB/T 34526-2017混合氣體氣瓶充裝規(guī)定
- GB/T 20416-2006自然保護區(qū)生態(tài)旅游規(guī)劃技術(shù)規(guī)程
- GB/T 12669-1990半導(dǎo)體變流串級調(diào)速裝置總技術(shù)條件
- 中醫(yī)護理技術(shù)操作并發(fā)癥的預(yù)防及處理教案資料
- 《中華人民共和國殘疾人證申請表》
- 新教材人教A版高中數(shù)學(xué)必修第二冊全冊教學(xué)課件
- 《企業(yè)員工培訓(xùn)國內(nèi)外文獻綜述》4800字
- 高考地理一輪復(fù)習(xí) 課件 中國地形-山脈
- 《游擊隊歌》-完整版PPT
- DB11-T 1832.8-2022建筑工程施工工藝規(guī)程 第8部分:門窗工程
- 質(zhì)量管理小組QC活動知識培訓(xùn)講義122頁(PPT 圖表豐富)_ppt
評論
0/150
提交評論