小编Car*_*on 的帖子

在x86程序集中分配堆栈上的变量.rbp和rsp vs esp和ebp

我最近一直在学习汇编,并决定反汇编一些我自己的可执行文件来学习.我注意到在线资源经常引用esp和ebp,堆栈和基指针.我写了这个程序:

int comp(int a, int b) {
    return a == b;
}
int main() {
    int a = 1;
    int b = 2;
    comp(a, b); 
}
Run Code Online (Sandbox Code Playgroud)

在Radare 2中,这反映为:

0x0040050e    55           push rbp
|           0x0040050f    4889e5       mov rbp, rsp
|           0x00400512    4883ec10     sub rsp, 0x10
|           0x00400516    c745f801000. mov dword [rbp-0x8], 0x1
|           0x0040051d    c745fc02000. mov dword [rbp-0x4], 0x2
|           0x00400524    8b55fc       mov edx, [rbp-0x4]
|           0x00400527    8b45f8       mov eax, [rbp-0x8]
|           0x0040052a    89d6         mov esi, edx
|           0x0040052c    89c7         mov …
Run Code Online (Sandbox Code Playgroud)

x86 assembly reverse-engineering ida

7
推荐指数
1
解决办法
4590
查看次数

标签 统计

assembly ×1

ida ×1

reverse-engineering ×1

x86 ×1