汇编语言基础
faithzzf
这个作者很懒,什么都没留下…
展开
-
Visual Stdudio简单for循环汇编代码分析
由于逆向过程或者逆向调试,偶尔需要看看汇编,才发现其它很多指令有些遗忘,同时一些汇编的语句段也会比较陌生。工作时间越久,更会体会到基础的重要性。而且要深刻理解高级语言的运行,很多时候确实查看生成的汇编指令。 这里通过查看Visual Studio 2008生成的汇编语句,来一步步熟悉汇编指令。 首先是C++中的简单for循环。 for(int i=0;i { p原创 2016-11-18 14:11:00 · 1282 阅读 · 1 评论 -
寻址方式小结
最近看了下王爽著的>,里面总结了8086 CPU编程的寻址方式。 (1)[idata]用医保常量来表示地址,可用于直接定位一个内存单元; (2)[bx]用一个变量来表示内存地址,可用于间接定位一个内存单元; (3)[bx+idata]用一个变量和常量表示地址,可在一个起始地址的基础上用变量间接定位一个内存单元; (4)[bx+si]用两个变量表示地址; (5原创 2016-11-19 12:03:00 · 1178 阅读 · 0 评论 -
IDA简单Switch-Case结构的汇编代码分析
使用IDA进行静态逆向分析,很重要的一点是是对高级语言程序结构的解析,比如Switch-Case结构。IDA的F5功能很多时候会无法生成C语言代码,此时就需要我们自己分析汇编代码,理解switch-case结构等。 从简单入手, 测试使用的C++代码如下: int switch_case(char a,int b,int *c,int d,int e) { switch(a)原创 2016-11-22 11:21:00 · 4214 阅读 · 0 评论