从PE文件读取变量值

问题描述 投票:0回答:1

我在Windows上使用了GCC汇编的C代码。

#include <stdio.h> #include <conio.h> int main() { int a = 68639977; printf("int: %d", a); getch(); a++; return 0; }
出于教育目的,我试图用一些十六进制编辑器从EXE PE文件(来自.DATA部分)中弄清INT值。

I将小数值转换为十六进制(4175CE9),但我找不到这个值

我搜索了整个.exe(不仅.data部分),而且我找不到此值。

我做错了什么?也许我完全错了,由于某种原因,我无法在EXE文件中看到此值。

ty.

在评论中已经指出了它,您找不到现代CPU的原因是使用Little Endian(“反向”)符号(您可以阅读有关它的

HERE
c portable-executable
1个回答
0
投票
HERHERING)。 。

在Godbolt

上查看
这个例子。在第8行(小数为4)中,您可以在机器视图中看到相反的值,并且汇编视图自动逆转(注意它使用GCC编译器)
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.