Avatar notebook default
20篇文章 · 3596字 · 3人关注
  • Resize,w 360,h 240
    二十. 一些探究

    全局变量:放在了数据段,大家都能用局部变量:放到了栈中,给专门函数使用的 在编译之后,全局变量的偏移量基本确定了,就是0x22b2在同一个编译器...

  • Resize,w 360,h 240
    十九. 红色区域

    为甚test调用sum的时候,要去往上走好多位置?必须往上走,因为有可能test的空间被push过来的sum参数覆盖,所以给他了一些的红色区域,...

  • Resize,w 360,h 240
    十八. 函数的栈帧

    如果不调用,那么64位系统设置局部变量的时候,将局部参数压入栈,不会像8086一样,修改sp的值,调用的时候直接使用bp-2,-4等操作;疑惑:...

  • Resize,w 360,h 240
    十七.AT&T汇编

    之前将的都是8086汇编,现在聊一聊AT&T汇编,基本都是相同的汇编就是使用寄存器存储数据和操作内存; ios基本都是面向64位系统开发的; m...

  • Resize,w 360,h 240
    十六.反汇编

    sizeof 就是一个符号,编译器一看到他,就知道是这个符号了,然后给他设置内部的数而已 bp指针如果加的话,就是找参数,如果减法,就是找到局部...

  • Resize,w 360,h 240
  • Resize,w 360,h 240
    十四.函数本质之03寄存器的保护

    一起探讨一下 在调用函数的时候,我们经常有使用到同一个寄存器,所以要现场保护; 和业务区分开,前边是入栈,保存数据,中间业务,后边是出栈;前后真...

  • Resize,w 360,h 240
    十三.函数本质之02局部变量

    当程序一启动的时候,系统分配了栈空间,然后大家都可以用,任何函数都可以使用; 讲解:1.当执行第9行代码时候,先将参数压入栈3,42.将下一行代...

  • Resize,w 360,h 240
    十二.函数本质之01参数返回值

    目标:计算两个数据,获取和 寄存器速度快,但是一般不用;实际开发使用“栈”来传递参数;栈简单好维护,pop,push,并且可以放置很多数量的东西...

文集作者