8.7 可执行文件运行时的必要条件

EXE文件作为单独文件存储在硬盘中,通过资源管理器找到并双击,其内容会被加载到内存中运行。
本地代码读写程序变量、调用函数时参照数据存储的内存地址执行命令,但EXE文件作为本地代码程序,未指定变量及函数实际内存地址。在可加载多个可执行程序的Windows运行环境中,每次运行程序时变量及函数分配的内存地址不同。
EXE文件给变量及函数分配虚拟内存地址,程序运行时虚拟内存地址会转换为实际内存地址,链接器在EXE文件开头追加转换内存地址所需的再配置信息。
EXE文件的再配置信息构成变量和函数的相对地址,相对地址是相对于基点地址的偏移量。在源代码中变量及函数分散记述,链接后的EXE文件中它们连续排列,变量和函数的内存地址分别用相对于变量组和函数组起始位置(基点)的偏移量表示,各基点的内存地址在程序运行时分配。

posted @ 2025-02-14 17:34  叽里呱啦哇里呱唧  阅读(13)  评论(0)    收藏  举报