zoukankan      html  css  js  c++  java
  • 2017-2018-1 20179215 课堂测试

    第三周测试总结分析

    本周课堂测试重点是为了让大家学习c语言中嵌套汇编程序的方法。本次测试中要求将之前编写的sum文件进行反汇编,观察其反汇编的结果,并将其在main.c中通过汇编调用sum。

     1.首先展示下我的sum函数、main函数及测试结果,如下图:


     2.观察汇编代码分析

     (1)通过objdump -d sum.o指令反汇编sum.o,并观察其反汇编之后的汇编语句,如下图所示:

     这些语句是不能直接当作汇编语句嵌套进c语言的,因为在尝试之后发现c语言中嵌套的汇编语句无法识别rbp,edi等寄存器,因此一定要理解语句当中的意思并且用嵌套语言写出来。

     (2)分析:进行当前ebp压栈操作,保留现场信息后,将立即数分别放入rbp栈的不同地址空间之中,然后通过eax寄存器将两个数相加放在了其中一个数的地址空间内,最后又将结果传入了eax寄存器中。

     (3)代码及运行结果展示:


  • 相关阅读:
    core文件生成总结
    php 5.2 版本isset()方法小坑
    gdb调试memcached
    mysql的sql优化案例
    php对mongo操作问题
    memcache锁
    php的session实现
    linux指令tips
    php拦截器(魔术方法)
    Nginx源码研究八:nginx监听socket实现流程
  • 原文地址:https://www.cnblogs.com/yl-930/p/7821895.html
Copyright © 2011-2022 走看看