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

上传人:cl****1 文档编号:465837533 上传时间:2023-10-20 格式:DOC 页数:11 大小:336.50KB
返回 下载 相关 举报
《汇编语言》实验报告-搭建开发环境_第1页
第1页 / 共11页
《汇编语言》实验报告-搭建开发环境_第2页
第2页 / 共11页
《汇编语言》实验报告-搭建开发环境_第3页
第3页 / 共11页
《汇编语言》实验报告-搭建开发环境_第4页
第4页 / 共11页
《汇编语言》实验报告-搭建开发环境_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《《汇编语言》实验报告-搭建开发环境》由会员分享,可在线阅读,更多相关《《汇编语言》实验报告-搭建开发环境(11页珍藏版)》请在金锄头文库上搜索。

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.

2、exe和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 “Proj

3、ect setting”页面的”link”选项卡中“object/library module ”中加入irvine32.lib2) 汇编与链接不带输出的加减法程序(即教材第85页addsubTest.asm);3) 在程序最后加入调用DumpRegs过程的语句,以输出各寄存器的值。4) 以单步执行的方式调试该程序,查看每步结果,并解释每步结果,并写成注释。(特别注意对标志位的影响)5) (可选)尝试修改程序。6) (可选)单步跟踪课件中4.3.3节的程序“ptr应用示例”,结合VC6的内存查看功能(通过菜单viewdebug windowsMemory调出内存查看窗口)理解每步的执行结果。(

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.modelflat,stdcall.stack4096ExitProcessPROTO,dwExitCode:DWORDDumpRegsPR

5、OTO.dataRvalSDWORD?XvalSDWORD26YvalSDWORD30ZvalSDWORD40.codemainPROCmovax,1000hincaxdecaxmoveax,Xvalnegeaxmovebx,Zvaladdeax,ebxmovRval,eaxmovcx,1subcx,1movax,0FFFFhincaxmovcx,0subcx,1movax,7FFFhaddax,2moval,0FFhaddal,1moval,+127addal,1moval,-128subal,1callDumpRegsINVOKEExitProcess,0mainENDPENDmain精选

6、文档结果:3. 输出各寄存器的值。DumpRegs PROTO程序最后加入调用DumpRegs过程的语句call DumpRegs 输出结果如下:4.单步执行的方式调试该程序,查看每步结果,并解释每步结果,并写成注释。(特别注意对标志位的影响)1、按F10进行调试、alt+F5调出寄存器的变化信息框。精选文档程序及标志位解读如下:.386.model flat,stdcall.stack 4096ExitProcess PROTO, dwExitCode:DWORDDumpRegs PROTO.dataRval SDWORD ?Xval SDWORD 26Yval SDWORD 30Zval

7、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 ;cx(把Zval的40赋给ebx)add eax,ebx / ax 14 ;bx 40 (求和eax=ebx+eax=14)mov Rval,eax/把eax复制给Rval精选文档mov

8、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 ExitProcess,0 /结束退出程序main ENDPEND main精选文档精选文档实验步骤或源代码、结果精选文档实验结论、心得体会(除填写实验结论、心得体会之外,还可以写明实验时遇到的困难问题,并说明此问题是否已解决,若已解决,请说明解决的方法;若未解决,请写出对于问题原因的推测。此部分还可以写明对教师教学的意见与建议。) (注:可编辑下载,若有不当之处,请指正,谢谢!) 精选文档

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号