keil编译输出Program Size与Map文件对应关系

2个月前真爱旅舍5270

在Keil编译过程中,我们经常需要将程序的大小输出到控制台或者调试器中。然而,程序大小不仅仅取决于代码本身,还需要考虑程序中所包含的静态和动态数据结构以及引用的其他文件的大小。因此,在输出程序大小时,我们需要同时考虑这些数据结构的大小。

在Keil中,我们可以通过编译时命令行参数中的-g选项来启用代码生成功能。这个选项会生成一个 debugging information (GI) 文件,其中包含了程序的内存地址和大小信息。在编译过程中,我们可以使用-g选项来生成GI文件,并在调试过程中使用它来查看程序在内存中的分布情况。

在生成GI文件后,我们可以通过-Map文件选项来指定程序中所包含的静态数据结构的大小。例如,如果我们想要输出程序中所包含的栈大小,我们可以通过以下命令来生成GI文件:

```

keil编译输出Program Size与Map文件对应关系

keil -c myprogram -g -Map myprogram.map

keil编译输出Program Size与Map文件对应关系

```

keil编译输出Program Size与Map文件对应关系

这个命令会将程序的内存地址和大小信息输出到控制台上,并在调试过程中使用该文件来查看程序在内存中的分布情况。

除了输出程序大小和GI文件之外,我们还可以使用-M选项来指定程序中所包含的动态数据结构的大小。例如,如果我们想要输出程序中所包含的数组大小,我们可以通过以下命令来生成GI文件:

keil编译输出Program Size与Map文件对应关系

keil编译输出Program Size与Map文件对应关系

```

keil -c myprogram -g -Map myprogram.map -M 1024

keil编译输出Program Size与Map文件对应关系

```

这个命令会将程序的内存地址和大小信息输出到控制台上,并在调试过程中使用该文件来查看程序在内存中的分布情况。

keil编译输出Program Size与Map文件对应关系

keil编译输出Program Size与Map文件对应关系

总结起来,在Keil编译过程中,程序大小和GI文件的对应关系是非常重要的。通过指定-g选项和-Map文件选项,我们可以在编译过程中和调试过程中同时输出程序大小和内存地址信息。

相关文章

学会驾驭内心的情感之河

学会驾驭内心的情感之河

在人生的旅途中,我们每个人都如同一位舵手,在情感的河流中航行。有时候,这条河流平静如镜;而有些时候,则会波涛汹涌。面对生活的风浪和内心的起伏,如何才能更好地掌控自己的情绪,不让它们成为我们前进的羁绊呢...

缓解经期不适:温柔关怀与有效建议

缓解经期不适:温柔关怀与有效建议

一、引言 在女性成长的过程中,“大姨妈”(月经)是一个常见的生理现象。然而,在经历了初潮的喜悦之后,随之而来的身体不适、情绪波动等问题往往让不少女生感到困扰。尤其是当周围的人未能给予适当的关心和...

女性生理期的困扰与应对策略:男性伴侣如何给予支持

女性生理期的困扰与应对策略:男性伴侣如何给予支持

在女性的日常生活中,月经是再正常不过的事情了,然而在有些特殊情况下,比如与男朋友交往时来例假,部分女性朋友会感到异常不适或困扰。这背后的原因多种多样,包括生理、心理及环境因素的相互影响。本文旨在分析这...

学会在情绪的起伏中保持平和:一场自我疗愈之旅

学会在情绪的起伏中保持平和:一场自我疗愈之旅

在一个快节奏、高压力的社会中,我们每个人或多或少都会经历情绪上的跌宕起伏,这就像生活给予我们的“考验”。我们也许会因为某些事情或人而感到悲伤或愤怒;又或者,在工作、学习或是人际关系中遭遇挫折。这些突如...

机械如何进口到株洲动力谷报关中检流程手续

机械如何进口到株洲动力谷报关中检流程手续

机械进口到株洲动力谷需要经过一系列的报关、中检等流程手续,以下是具体的进口流程: 1. 准备相关文件:在进口前,需要准备各种文件,包括贸易合同、发票、装箱单、提单、报关单、检单等。这些文件需要真...

阳台护栏安装价格解析:成本与性价比

阳台护栏安装价格解析:成本与性价比

在城市中,大多数家庭都拥有一个露天的阳台空间作为休息和赏景的小天地。然而,对于有小孩或者家中有宠物的家庭来说,安全问题成为了一个不可忽视的因素。因此,选择合适的阳台护栏不仅是对生活品质的提升,更是对家...