码迷,mamicode.com
首页 >  
搜索关键字:ebp    ( 242个结果
【汇编】计算机是如何工作的
李景源原创作品转载请注明出处《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000一、编写一个main.c文件,保存并退出。二、反汇编C语言程序三、打开后的页面如下:四、去掉所有以点开头后的内容,留下纯汇编代码:g: pushl %ebp movl %esp,%ebp movl..
分类:其他好文   时间:2015-03-09 01:50:01    阅读次数:167
一个简单C程序的汇编代码分析
几个重要的寄存器eip - 用于存放当前所执行的指令地址esp - 栈(顶)指针寄存器ebp - 基址(栈底)指针寄存器简单的C程序 1 int g(int x) 2 { 3 return x + 10; 4 } 5 6 int f(int x) 7 { 8 return g(x); 9 ...
分类:其他好文   时间:2015-03-09 00:25:05    阅读次数:209
反汇编一个简单的C程序
一、实验截图二、汇编代码分析:cpu首先执行main函数里的pushl %ebp和movl %esp %ebp。如下图:esp减去4就是向上移动4位到1,如下图:把1赋值给esp,如下图:call f即为eip转到f执行,先push eip,再将f的地址传给eip。.........太晚了,先略,以...
分类:其他好文   时间:2015-03-09 00:20:29    阅读次数:124
数组与指针数组 汇编区别
int array[] = {2,3,4,5};00A3355E mov dword ptr [array],2 00A33565 mov dword ptr [ebp-10h],3 00A3356C mov dword ptr [ebp-0C...
分类:编程语言   时间:2015-03-07 18:21:54    阅读次数:148
实例分析C程序运行时的内存结构
先验知识静态变量存储在静态存储区,局部变量存储在动态存储区(栈),代码存放在代码区寄存器,EBP指向栈底,ESP指向栈顶,EIP指向正在执行指令的下一条指令,三个寄存器中保存的都是地址,32位系统,地址为4个字节即dword所有写在函数定义里面的语句都编译成指令(驱动CPU)实验代码12345678...
分类:其他好文   时间:2015-03-05 18:45:11    阅读次数:132
windows程序堆栈分布
Debug版本:0x004000D0 Local_3 ebp-20 <-- 局部变量3 0xCCCCCCCC 0xCCCCCCCC0x004000DC Local_2 ebp-14 <-- 局部变量2 0xCCCCC...
分类:Windows程序   时间:2015-03-03 20:20:16    阅读次数:194
《linux内核分析》第一次课 实验作业
解释main.c的汇编码的堆栈变化实验截图如下图所示:下面从main函数开始进行分析(三个可变数值从上到下分别为4,7,4):不妨假设一开始为空栈,初始位置为0,ebp=esp,以下用行号进行标记18:esp指向位置(1),位置(1)的值为esp的地址19:使ebp指向与esp相同的地址(位置1)2...
分类:系统相关   时间:2015-03-02 20:43:42    阅读次数:212
gdb汇编调试tips
1、内存查看命令x.x/x 以十六进制输出x/d 以十进制输出x/c 以单字符输出x/i 反汇编 – 通常,我们会使用x/10i $ip-20 来查看当前的汇编($ip是指令寄存器)x/s 以字符串输出(gdb) x/10i main 0x80483bb : push %ebp 0...
分类:数据库   时间:2015-02-16 15:29:28    阅读次数:351
汇编之寄存器学习
一般寄存器:AX、BX、CX、DX AX:累积暂存器,BX:基底暂存器,CX:计数暂存器,DX:资料暂存器 索引暂存器:SI、DI SI:来源索引暂存器,DI:目的索引暂存器 堆叠、基底暂存器:SP、BP SP:堆叠指标暂存器,BP:基底指标暂存器 EAX、ECX、EDX、EBX:為ax,bx,cx,dx的延伸,各為32位元 ESI、EDI、ESP、EBP:為si,di,...
分类:其他好文   时间:2015-02-09 12:53:46    阅读次数:159
不通过传值传指针传引用而实现形参修改实参的值
1、首先了解一下堆栈帧的创建步骤(来自《32位汇编语言程序设计》王艳平一书):      1)主程序把传递的参数压入堆栈;      2)调用子程序时,返回地址压入堆栈;      3)子程序中,EBP压入堆栈;设置EBP等于ESP,通过EBP访问参数和局部变量;      4)子程序有局部变量,ESP减去一个数值,在堆栈预留局部变量使用的空间;       5)子程序要保护的寄存器...
分类:其他好文   时间:2015-01-27 15:04:49    阅读次数:155
242条   上一页 1 ... 17 18 19 20 21 ... 25 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!