OllyDbg 主线程窗口:1. 汇编代码对应的地址窗口2. 汇编代码对应的十六进制机器码窗口3. 反汇编窗口4. 反汇编代码对应的注释信息窗口5. 寄存器信息窗口6. 当前执行到的反汇编代码的信息窗口7~9. 数据所在的内存地址,十六进制,ASCII码10~12.栈地址,存放的数据,对应说明信息O...
分类:
数据库 时间:
2015-04-05 11:54:45
阅读次数:
215
GCC
GCC参数
举例
GCCgcc大家都很熟悉,是个编译器,功能强大,全称是:GUN GCC。平时大家都简单的称为:GCC, 功能强大,能够编译很多的语言。包括:c, c++, java, ada等…GCC参数gcc平时有很多参数,在平时我编译小程序的时候,都直接gcc -o object source.c就可以了。但是有一次我想查看我同样目的但是不同写法的两个代码是执行效率上是否有差别。所以我...
分类:
编程语言 时间:
2015-03-30 01:38:12
阅读次数:
210
本周的实验浅析了系统调用的工作过程,下面通过使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用加深对其过程的理解。系统调用列表:http://codelab.shiyanlou.com/xref/linux-3.18.6/arch/x86/syscalls/syscall_32.tbl...
作者:吴乐 山东师范大学《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000本次实验的主要内容就是分别采用API和gcc嵌入汇编的方式调用system_call。系统调用其实就是操作系统提供的服务。我们平时编写的程序,如果...
API即(Application Program Interface)应用编程接口,实际上我的看法讲汇编代码和C语言完美的结合起来,充分发挥各自的优点,让软硬件兼容的更加流畅,asm volatile(),要遵循一定的规则才能做到。刘占鹏《Linux内核分析》MOOC课程http://mooc.st...
字符串的存储位置到底在哪儿?按照我以前编汇编代码的经验,字符串肯定是放在数据段。但是在C/C++中,这个却不一定成立吧!昨天晚上跟群里的同学讨论,我们观点不太一样,他认为应该直接存在函数的栈空间。我可以肯定字符串常量会放在数据段,但是对字符数组我确实不太确定了。所以就分别在VC和GCC下试了试,看了个简单程序的反汇编代码。首先看看VC的吧:#include "string.h"
#include "...
分类:
其他好文 时间:
2015-03-16 14:35:00
阅读次数:
155
1简介2简单编译2.1预处理2.2编译为汇编代码(Compilation)2.3汇编(Assembly)2.4连接(Linking)3多个程序文件的编译4检错5库文件连接5.1编译成可执行文件5.2链接5.3强制链接时使用静态链接库1简介GCC 的意思也只是 GNU C Compiler 而已。经过...
分类:
系统相关 时间:
2015-03-11 19:34:04
阅读次数:
174
作者:申小宁原创作品转载请注明出处《Linux内核分析》MOOC课程http://mooc.study.163.com/course/USTC-1000029000实验截图:c代码:编译命令:汇编代码:基础知识寄存器寄存器是中央处理器内的组成部分。寄存器是有限存贮容量的高速存贮部件,它们可用来暂存指令,数据和地址..
分类:
其他好文 时间:
2015-03-09 01:51:15
阅读次数:
231
李景源原创作品转载请注明出处《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
几个重要的寄存器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