据我所知,汇编程序分为两部分:1)代码 2)数据。
现在,当我们使用C\ C ++进行编码时,代码被加载到内存中,然后CPU开始执行代码,逐个指令地作为汇编程序。
我的问题是:
1. C代码存储在哪里?我的意思是,当我在Visual Studio中运行程序时,代码是否加载到其中一个堆栈或堆等中?
2. 因此,内存在虚拟上分为堆栈、堆和数据段,但是当CPU将程序作为汇编程序执行时,它们是否都是具有相同数据区域的一个汇编程序,还是组成了2或3个汇编程序,它们从一个跳转到另一个?
** 让我添加这个问题,也许它会澄清我的意图: 当我启动C程序时,代码(机器指令)被加载到内存中。因此,这是一个汇编程序。但是内存如何划分?我的意思是,不同的内存部分(例如堆栈、数据段等)如何修改汇编程序?
** 让我添加这个问题,也许它会澄清我的意图: 当我启动C程序时,代码(机器指令)被加载到内存中。因此,这是一个汇编程序。但是内存如何划分?我的意思是,不同的内存部分(例如堆栈、数据段等)如何修改汇编程序?