《汇编语言》实验报告_搭建开发环境.docxVIP

《汇编语言》实验报告_搭建开发环境.docx

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
. 《汇编语言》实验报告 得分: 班级 实验 名称  **** 姓名 *** 学号 搭建开发环境 实验室 号  ***** **** 实验 目的  搭建汇编语言的开发环境,熟悉汇编程序开发的基本步骤,掌握基本的调试操作。 实验 要求  基于 VISUAL STUDIO 平台,结合 MASM32 的汇编器,构建 IA-32 汇编语言的开发环境。 . . VC6 平台下的汇编语言开发环境搭建 (使用 MASM32 的汇编器 +VC6) 配置 IDE 环境: – 在 VC 的 tools/option/Directories 页面中添加 Irvine32.inc 等所在的目录到 include files 中; 添加 Irvine32.lib 等所在的目录到 library files. – 将 masm32 中的 ml.exe 和 ml.err 拷贝到 VC 的 Microsoft Visual Studio\VC98\Bin 目录中 实验 内容  创建与配置 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 setting”页面的 ”link ”选项卡中 “object/library module ”中加入 irvine32.lib 2) 汇编与链接不带输出的加减法程序 (即教材第 85 页 addsubTest.asm); 在程序最后加入调用 DumpRegs 过程的语句,以输出各寄存器的值。 以单步执行的方式调试该程序, 查看每步结果, 并解释每步结果 ,并写成注 释。 (特别注意对标志位的影响 ) (可选)尝试修改程序。 (可选)单步跟踪课件中 4.3.3 节的程序“ ptr 应用示例”,结合 VC6 的内存查看功能(通过菜单 view debug windows Memory 调出内存查看窗口)理解每步的执行结果。(注意课件中只是大部分代码,请补全头文件以及程序退出宏。) 一、配置 IDE 环境: 1、 添加 Irvine32.lib 等所在的目录到 library files ; . . 2、 添加 添加 Irvine32.inc 等所在的目录到 include files 中; 3. 将 masm32中的 ml.exe 和 ml.err 拷贝到 VC 的 Microsoft Visual Studio\VC98\Bin 目录中 二、创建与配置 project: . . 2.编辑教材 85 页不带输出的程序 代码如下: .386 .model flat,stdcall .stack 4096 ExitProcess PROTO, dwExitCode:DWORD DumpRegs PROTO .data Rval SDWORD? Xval SDWORD26 Yval SDWORD30 Zval SDWORD40 .code main PROC mov ax,1000h inc ax dec ax mov eax,Xval neg eax mov ebx,Zval add eax,ebx mov Rval,eax mov cx,1 sub cx,1 . . mov ax,0FFFFh inc ax mov cx,0 sub cx,1 mov ax,7FFFh add ax,2 mov al,0FFh add al,1 mov al,+127 add al,1 mov al,-128 sub al,1 call DumpRegs INVOKE ExitProcess,0 main ENDP END main 结果: 输出各寄存器的值。 DumpRegs PROTO 程序最后加入调用 DumpRegs过程的语句 call DumpRegs 输出结果如下: 4.单步执行的方式调试该程序,查看每步结果,并解释每步结果,并写成注释。 ( 特别注意对标 志位的影响 ) 1、按 F10 进行调试、 alt+F5 调出寄存器的变化信息框。 . . 程序及标志位解读如下: .386 .model flat,stdcall .stack 4096 ExitProcess PROTO, dwExitCode:DWORD

文档评论(0)

专注于电脑软件的下载与安装,各种疑难问题的解决,office办公软件的咨询,文档格式转换,音视频下载等等,欢迎各位咨询!

1亿VIP精品文档

相关文档