小编Yuv*_*val的帖子

将int自己的地址分配给其值

以下代码是未定义的行为,实现是由标准定义还是定义的?我找不到任何关于将整数分配给自己的地址的参考.

volatile int x = (int)&x;
Run Code Online (Sandbox Code Playgroud)

此代码转换为:

lea         eax,[ebp-4]  
mov         dword ptr [ebp-4],eax 
Run Code Online (Sandbox Code Playgroud)

c c++

27
推荐指数
2
解决办法
713
查看次数

PE格式,IAT目录有什么用

在 PE 格式中,我们有导入表目录(由 访问IMAGE_DIRECTORY_ENTRY_IMPORT)和 IAT 目录(由 访问IMAGE_DIRECTORY_ENTRY_IAT)都是可选头数据目录的一部分。

使用导入表,加载器动态加载和解析必要的库和函数。这是通过迭代导入地址表 RVA(Thunk 表)来完成的,该表是导入表的一部分。

那么,如果我们使用导入目录进行导入解析,我们需要 IAT 目录做什么?

我一直在阅读Microsoft PE 规范,但找不到答案。此外,SO 中有一些问题,但其中大多数使用 IAT 来引用 Thunk 表而不是 IAT 目录。

谢谢

编辑

我认为导入地址表是导入表目录中的一个字段,与称为 IAT 目录的导入地址表之间存在混淆。我的问题是关于 IAT 目录。

再次感谢

windows portable-executable

7
推荐指数
3
解决办法
4653
查看次数

标签 统计

c ×1

c++ ×1

portable-executable ×1

windows ×1