Scheme和Lifting
-
Scheme(架构): 架构通常指的是反编译器使用的数据结构和算法框架。这包括对二进制指令、数据、控制流和函数关系的抽象表示。在 IDA Pro 的案例中,更好的架构意味着有更有效的数据结构来映射和分析二进制代码的功能,以及如何将这些功能转换回源代码。架构的质量直接影响了反编译器能够正确分析和重建高级代码逻辑的能力。
-
Lifting(提升): 提升是一个将低级别的机器指令转换为高级别中间表示(IR)的过程。在 Ghidra 的案例中指的是更好的提升,意味着该工具在处理二进制指令并将它们”提升”到一种更容易被人理解的高级抽象时,做得更精确。这个过程对于分析和转换代码至关重要,因为一个准确的中间表示会使最终生成的高级代码更加准确和可读。
有向图中的支配
在有向图理论中,一个节点X “支配” 另一个节点Y的意思是从图的入口节点到节点Y的每个路径都必须经过节点X。换句话说,支配意味着没有其他路径可以绕过节点X到达节点Y。