反汇编一个简单的C程序,分析汇编代码

如今的计算机处理器的结构主要分为两类,一类是冯·诺伊曼结构,一类是哈佛结构。其中冯·诺伊曼结构是一种将程序指令存储器和数据存储器合并在一起的结构,哈佛结构是一种将程序指令和数据分开存储的结构,无论哪种结构,一般的流程都是cpu到存储器中读取程序指令,然后译码,执行,当需要数据时,再到存储器中读取数据。指令都是顺序执行,直到指令结束。
摘要由CSDN通过智能技术生成

李峰

原创作品转载请注明出处

《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000

实验

源代码:

int g(int x)
{
    return x + 4;
}

int f(int x)
{
    return g(x);
}

int main()
{
    return f(10) + 3;
}

输入:

gcc -S -o main.s main.c -m32

反汇编代码:

    .file   "201504411_\345\217\215\346\261\207\347\274\226.c"
    .text
    .globl  g
    .type   g, @function
g:
.LFB0:
    .cfi_startproc
    pushl   %ebp
    .cfi_def_cfa_offset 8
    .cfi_offset 5, -8
    movl    %esp, %ebp
    .cfi_def_cfa_register 5
    movl    8(%ebp), %eax
    addl    $4, %eax
    popl    %ebp
    .cfi_def_cfa 4, 4
    .cfi_restore 5
    re
  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值