Alone Cáfe
There is no limit to learning.
阿龙咖啡


文章归档

for 循环的反汇编浅析

for 循环     for 循环是使用频度最高的循环结构,我们通过 C 语言反汇编实例,来分析 for 循环结构在计算机底层的原理和构造。首先,我们编写一个简单的 for 循环:     为了方便观察,我们用十六进制来表示循环变量,编译后,我们用 …

   2018-09-13   112   3 查看全文

switch 语句的反汇编浅析

switch 的简单情景(case 不超过 3 项)     首先,我们分析一下 switch 语句的一种简单情景,我们可以用 C 写出如下如下代码。     编译后用 OllyDBG 载入,它将显示出如下的反汇编代码。     首先,我们可以看到 ESP…

   2018-09-12   113   0 查看全文

通过分析反汇编还原 C 语言 if…else 结构

    让我们从反汇编的角度去分析并还原 C 语言的 if … else 结构,首先我们不看源代码,我们用 OllyDBG 载入 PE 文件,定位到 main 函数领空,如下图所示。                         &nbs…

   2018-09-11   77   0 查看全文

__cdecl、__stdcall、__fastcall 与 __pascal 浅析

call 指令与 retn 指令     首先我们得了解 CALL 和 RETN 指令的作用,才能更好地理解调用规则,这也是先决条件。     实际上,CALL 指令就是先将下一条指令的 EIP 压栈,然后 JMP 跳转到对应的函数的首地址,当执行完函数体后,…

   2018-09-11   95   1 查看全文

ESP、EBP、CALL 指令与局部变量浅析

概述     函数调用是计算机程序中一个最重要的概念之一,从汇编的角度看,能更加直观地理解函数调用的原理,理解 CALL 指令调用过程中 ESP、EBP 寄存器的作用。     我们先从一段简陋的 C 语言代码说起,我们首先调用了 printf 函…

   2018-09-10   171   1 查看全文