




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、匯編語言實驗報告得分: 班級*姓名*學號*實驗名稱搭建開發環境實驗室號*實驗目的搭建匯編語言的開發環境,熟悉匯編程序開發的基本步驟,掌握基本的調試操作。實驗要求基于VISUAL STUDIO 平臺,結合MASM32的匯編器,構建IA-32匯編語言的開發環境。實驗內容1) VC6平臺下的匯編語言開發環境搭建(使用MASM32的匯編器+VC6)配置IDE環境: 在VC的tools/option/Directories頁面中添加Irvine32.inc等所在的目錄到include files中; 添加Irvine32.lib等所在的目錄到library files. 將masm32中的ml.exe和
2、ml.err拷貝到VC的Microsoft Visual StudioVC98Bin目錄中創建與配置project: 新建VC的win32 console類型空工程 創建一個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) 在程序最后加入調用DumpRegs過程的語句,以輸出各寄存器的值。4) 以單步執行的方式調試該程序,查看每步結果,并解釋每步結果,并寫成注釋。(特別注意對標志位的影響)5) (可選)嘗試修改程序。6) (可選)單步跟蹤課件中節的程序“ptr應用示例”,結合VC6的內存查看功能(通過菜單viewàdebug windowsàMemory調出內存查看窗口)理解每步的執行結
4、果。(注意課件中只是大部分代碼,請補全頭文件以及程序退出宏。)一、配置IDE環境:1、 添加Irvine32.lib等所在的目錄到library files;2、 添加添加Irvine32.inc等所在的目錄到include files中;3. 將masm32中的ml.exe和ml.err拷貝到VC的Microsoft Visual StudioVC98Bin目錄中二、創建與配置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結果:3. 輸出各寄存器的值。DumpRegs PROTO程序最后加入調用DumpRegs過程的語句call DumpRegs 輸出結果如下:4.單步執行的方式調試該程序,查看每步結果,并解釋每步結果,并寫成注釋。(特別注意對標志位的影響)1、按F10進行調試、alt+F5調出寄存器的變化信息框。程序及標志位解讀如下:.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(實現自增)dec ax/ax 4096;bx 57344(實現自減)mov eax,Xval /把Xval復制給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復制給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. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 睡眠質量提升與養生保健技巧考核試卷
- 燈具國際貿易風險與應對策略考核試卷
- 鋅錳電池的電極材料在長期儲存中的性能保持考核試卷
- 銀發族養生保健特殊關注考核試卷
- 貓狗常見疾病防治指南
- 冬季小學生疾病預防指南
- 食源性疾病主動監測體系構建與應用
- Orchinol-生命科學試劑-MCE
- 超神數學-高考數學總復習拔高篇(二輪)專題19平面向量中的取值范圍問題(含答案或解析)
- 2025年流媒體平臺競爭格局下的內容創新實踐與案例分析
- 2025年道教人員考試試題及答案
- 獸藥GMP培訓課件
- 2022-2023學年浙江省溫州市永嘉縣人教PEP版四年級下冊期末測試英語試卷
- 《現代色譜分析HPL》課件
- 2024年設備監理師考試題庫及答案(歷年真題)
- 三病母嬰傳播及阻斷
- 初中常見副詞英語單選題100道及答案解析
- 安徽農業大學《中級財務會計》2022-2023學年第一學期期末試卷
- HXD1C型機車轉向架培訓教材(20091008)資料
- 工業自動化設備維護保養操作手冊
- 針灸師招聘面試題與參考回答2025年
評論
0/150
提交評論