实验11_程序的机器级表示_过程_实验报告实验11_程序的机器级表示_过程_实验报告.doc

实验11_程序的机器级表示_过程_实验报告实验11_程序的机器级表示_过程_实验报告.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验11_程序的机器级表示_过程_实验报告实验11_程序的机器级表示_过程_实验报告

浙江大学城市学院实验报告 课程名称 计算机系统原理实验 实验项目名称 实验十一 程序的机器级表示——过程 学生姓名 专业班级 学号 实验成绩 指导老师(签名 ) 日期 注意: 务请保存好各自的源代码,已备后用。 请把作业同时上传到BB平台和FTP。 文件名为:学号_姓名_日期_实验几,姓名实验01 22:2007 huommupload 123456 一、实验目的: 了解IA32指令系统的常用指令,了解Linux汇编语言的基本语法、汇编语言的编写、调试技巧。 二、实验内容: 1、阅读给出 test11_1.c以及对应的反汇编代码,为汇编代码添加注释,并画出函数调用前后的栈帧结构图。 2、阅读给出 test11_2.c以及对应的汇编代码,为汇编代码添加注释,并补充完整c程序源码。 三、实验步骤: 1、阅读给出 test11_1.c以及对应的反汇编代码,为汇编代码添加注释,并画出函数调用前后的栈帧结构图。 指令注释: swap_add: 8048354: 55 push %ebp # 8048355: 89 e5 mov %esp,%ebp # 8048357: 53 push %ebx # 8048358: 8b 55 08 mov 0x8(%ebp),%edx # 804835b: 8b 4d 0c mov 0xc(%ebp),%ecx # 804835e: 8b 1a mov (%edx),%ebx # 8048360: 8b 01 mov (%ecx),%eax # 8048362: 89 02 mov %eax,(%edx) # 8048364: 89 19 mov %ebx,(%ecx) # 8048366: 01 d8 add %ebx,%eax # 8048368: 5b pop %ebx # 8048369: 5d pop %ebp # 804836a: c3 ret 0804836b caller: 804836b: 55 push %ebp # 804836c: 89 e5 mov %esp,%ebp # 804836e: 83 ec 18 sub $0x18,%esp # 8048371: c7 45 fc 7b 00 00 00 movl $0x7b,0xfffffffc(%ebp) # 8048378: c7 45 f8 c8 01 00 00 movl $0x1c8,0xfffffff8(%ebp) # 804837f: 8d 45 f8 lea 0xfffffff8(%ebp),%eax # 8048382: 89 44 24 04 mov %eax,0x4(%esp) # 8048386: 8d 45 fc lea 0xfffffffc(%ebp),%eax # 8048389: 89 04 24 mov %eax,(%esp) # 804838c: e8 c3 ff ff ff call 8048354 swap_add # 8048391: 8b 55 fc mov 0xfffffffc(%ebp),%edx # 8048394: 2b 55 f8 sub 0xfffffff8(%ebp),%edx # 8048397: 0f af c2 imul %edx,%eax # 804839a: c9

您可能关注的文档

文档评论(0)

vshoulrengb3 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档