链接后的exe文件是否只包含机器语言?

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

我学习C语言有一个问题。

如果我们编译一种编写源代码的高级语言,它就变成了.obj文件,如果我们链接这些文件,它就变成了exe文件,每个obj文件和exe文件是由什么语言组成的?集会?机器语言?我很好奇。

我认为exe文件是机器语言,因为我们的硬件可以理解exe文件来启动程序。

c exe computer-science machine-code
1个回答
0
投票

除了纯文本(如 gregspears 在评论中提到的)之外,通常还存在初始化值列表,这些初始化值在启动时复制到全局初始化变量中,即用于初始化它们。对于显式初始化的局部静态变量也是如此。这些只是值,不是“set ...”指令的一部分,启动时复制它们的代码在其他地方,基本上是一个循环。

简而言之:不。

© www.soinside.com 2019 - 2024. All rights reserved.