实验二 hello可执行程序的生成以及GCC和GDB使用.doc_第1页
实验二 hello可执行程序的生成以及GCC和GDB使用.doc_第2页
实验二 hello可执行程序的生成以及GCC和GDB使用.doc_第3页
实验二 hello可执行程序的生成以及GCC和GDB使用.doc_第4页
实验二 hello可执行程序的生成以及GCC和GDB使用.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

浙江大学城市学院 计算机系统原理实验浙江大学城市学院实验报告课程名称 计算机系统原理实验 实验项目名称 实验二 hello可执行程序的生成以及GCC和GDB使用 学生姓名 专业班级 学号 实验成绩 指导老师(签名 ) 日期 注意:l 务请保存好各自的源代码,已备后用。l 请把作业同时上传到BB平台和FTP。l 文件名为:学号_姓名_日期_实验几,如30801001_姓名_20100305_实验01l 22:2007 一、实验目的:1.熟悉Linux操作系统环境;2.通过了解高级语言源程序和目标机器代码的不同表示及其相互转换,深刻理解高级语言和机器语言之间的关系,以及机器语言和不同体系结构之间的关系。3掌握GCC在Linux环境下编写C语言程序命令和步骤;4.掌握GDB调试C语言程序命令和步骤。二、实验内容:1、使用文本编辑器编写hello源代码;2、使用GCC编译器,逐步编译hello程序,观察中间文件。3、使用文本编辑器编写tst.c源程序;4、使用GDB调试tst程序,掌握常用调试命令。三、实验步骤:1、 使用文本编辑器编写hello程序源码,截图展示。2、 根据实验讲义,使用不同的命令选项,输出hello编译过程中间文件,截图展示。3、 使用Editplus或者其他合适的软件,查看hello.i,hello.s,hello.o hello文件内容,截图展示。4、 使用文本编辑器编写实验讲义中给出的tst.c源码,截图展示。5、 根据实验讲义步骤,学习逐步调试tst程序,掌握GDB常用命令,截图展示。6、 结合实验操作以及GDB的help,了解以下命令的作用。gdb启动gdblist列出函数run运行程序break设置断点print强制调用函数continue继续运行程序直到下一个断点next执行下一步step单步进入info查看程序信息finish退出当前函数quit退出gdbhelp帮助指令四、思考题(请根据自己的理解,能回答多少就答多少)(1)分析同一个源程序在不同机器上生成的可执行目标代码是否相同。提示:从多个方面(如ISA、OS和编译器)来分析。不相同。因为对于不同的机器其硬件组成不同,例如:CPU。所以同一个源程在不同机器上生成的可执行目标代码是不同的。(2) 你能在可执行目标文件中找出函数printf ()对应的机器代码段吗?能的话,请标示出来。 不能。因为源程序中的printf函数在可执行文件中已转换为机器语言。被翻译的机器语言中有printf函数,但是不知道是从哪一段开始翻译的。(3) 为什么源程序文件的内容和可执

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论