私の知る限り、アセンブリプログラムは 1) コード 2) データの 2 つに分かれています。さて、たとえば c\c++ でコーディングすると、コードがメモリにロードされ、CPU がアセンブリ プログラムとして 1 命令ずつコードの実行を開始します。私の質問は: 1. c コードはどこに保存されていますか? つまり、Visual Studio でプログラムを実行しているとき、コードはそれらの 1 つ (ヒープ、スタックなど) にロードされますか? 2. したがって、メモリはスタック、ヒープ、および日付セグメントに仮想的に分割されますが、CPU がプログラムをアセンブリ プログラムとして実行すると、それらはすべて同じデータ領域を持つ 1 つのアセンブリ プログラムであるか、または 2 に形成されます。または、あるアセンブリから別のプログラムにジャンプする 3 つのアセンブリ プログラムはありますか?
** この質問を追加させてください。私の意図が明確になるかもしれません。C プログラムを起動すると、コード (機械語命令) がメモリにロードされます。つまり、これは 1 つのアセンブリ プログラムです。しかし、メモリ分割はどのように行われるのでしょうか? つまり、スタック、データセグメントなどのさまざまなメモリセクションがアセンブリプログラムをどのように変更するのでしょうか?