2.3.1测试

2.3.1测试

任务详情

1 编辑并运行2.3.1中的代码,要求在不修改t2.c 和 t1.c中main函数中的代码的情况下,程序运行结果是你的后四位学号。提交代码和运行结果截图。
2 网上学习objdump命令,提交不少于5篇博客链接和微信读书上的图书链接,并给出你认为最好的讲解资源的链接或图书名及章节
3 用objdump分析第1步中的可执行文件和目标文件,提交你的分析截图以及如何和教材讲解内容对应的,比如obj文件的文件头,代码段,数据段等,可执行文件如何链接mysum的。

任务一

代码截图:

t1.c

2.3.1测试

t2.c

2.3.1测试

运行结果:

2.3.1测试

任务二

博客园连接:
objdump命令 _小百
objdump命令的使用 liuyimin
Linux:objdump命令解析
objdump命令的用法(最好!)

任务三

本次主要使用到的代码

objdump -S test C语言与汇编语言同时显示
objdump -d -j .text test 显示相应section的汇编代码
objdump -t test 输出目标文件的符号表()

文件头

2.3.1测试
2.3.1测试

代码段

2.3.1测试
2.3.1测试
2.3.1测试

数据段

2.3.1测试
2.3.1测试

bss段

2.3.1测试

符号表

2.3.1测试

执行文件如何链接mysum

2.3.1测试
2.3.1测试

从图中可以看出main函数在执行到mysum时函数call连接了mysum函数所在的地址(0x6a1)。

上一篇:2.3.1测试


下一篇:ARM linux 使用交叉编译工具链进行bin的反汇编