![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
编译优化
魔封乞儿
I'm not a normal person, I'm an engineer.
展开
-
Keil屏幕中间有蓝色竖线——浅谈Keil 和 IAR 中Right Margin线的显示和取消
有时候看别人的Keil屏幕中间有蓝色竖线,还以为是显示器坏了。其实不然,这条竖线被称之为“Right Margin”,右边界或者右边界线,是文档排版中的一个术语,指的是页面上文本内容的最右边界。它定义了文本可以延伸到的最远距离,以确保内容不会超出页面的可视区域。在文档编辑软件中,用户可以根据需要调整右边缘,以控制文本的布局和格式。原创 2024-06-20 18:10:44 · 381 阅读 · 0 评论 -
IAR 中关于 __iar_program_start(); 函数的使用
在 IAR 编译器中,当你从 IAR IDE 或命令行编译一个项目时,链接器配置文件(通常是一个 .icf 文件)会指定重定位和加载程序到目标硬件的详细信息。在嵌入式系统开发中,理解和配置程序的入口点是非常重要的,因为它影响到程序的加载、执行和调试过程。:它定义了程序的起始地址,当程序被加载到内存并开始执行时,CPU 将从这个地址开始执行指令。:在程序的执行过程中,如果需要动态重定位,链接器将使用这个符号来确定新的执行地址。:链接器使用这个符号来确定程序的加载地址,确保程序在正确的内存位置开始执行。原创 2024-05-30 09:53:43 · 419 阅读 · 0 评论 -
嵌入式软件C语言开发中 ALLOC_GLOBALS 宏的应用
嵌入式软件C语言开发中通过这种方式,可以控制全局变量的定义,确保它们只在单个编译单元中定义一次,而在其他需要使用这些全局变量的编译单元中,通过 extern 声明来引用它们,从而避免全局变量的多重定义问题。如果没有定义宏 ALLOC_GLOBALS,EXTERN 将被定义为 extern,这意味着全局变量将被声明为外部链接,允许在其他编译单元中使用,但不会在当前文件中定义。这段代码是C或C++预处理器指令的一个示例,其主要作用是控制全局变量的定义,以避免在多个编译单元中重复定义相同的全局变量。原创 2024-05-23 11:02:46 · 180 阅读 · 0 评论 -
MDK AC6 不支持在代码中改变优化等级
可对单个 C 文件进行优化等级选择。原创 2022-10-13 15:07:17 · 221 阅读 · 0 评论 -
Keil MDK & IAR for ARM 局部优化指令
MDK & IAR 局部优化指令转载 2022-10-11 17:31:52 · 315 阅读 · 0 评论