【Keil程序大小】Keil编译结果Code-RO-RW-ZI分析

news2025/1/13 17:48:05

【Keil程序大小】Keil编译结果Code-RO-RW-ZI分析

下图为keil编译后的结果:

编译结果

  1. 单位为Byte。
  2. Code是程序大小。
  3. RO是常量大小。
  4. RW是读写变量占用大小,如已初始化的静态变量和全局变量。
  5. ZI是全零变量占用大小,如未初始化的static修饰的静态变量、全局变量以及堆栈所占的空间。

ROM对应到MCU就是Falsh。
RAM对应到MCU就是SRAM。

Flash占用大小 = Code + RO + RW
SRAM占用大小 = RW + ZI

SRAM占用大小很好理解,RW和ZI其实都是变量嘛,存储到RAM中。
但是Flash占用大小为什么还要有RW?RW是已经被初始化的变量,程序在被烧写到MCU中时,RW会被先写到Flash中,然后运行时,再复制到SRAM中。

除了这里可以查看程序占用情况,也可以看map文件。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1654075.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ENG-2 AM,129423-53-6主要用于检测生物体系中的Na+浓度

引言:在化学研究的海洋中,优质的化学试剂是实验成功的关键。今天,我要为大家分享一款备受好评的化学试剂——ENG-2。这款试剂以其独特的性能和广泛的应用领域,赢得了众多科研人员的青睐。 中文名称:钠离子荧光探针ENG-…

Linux进程——Linux进程间切换与命令行参数

前言:在上一篇了解完进程状态后,我们简单了解了进程优先级,然后遗留了一点内容,本篇我们就来研究进程间的切换,来理解上篇提到的并发。如果对进程优先级还有没理解的地方可以先阅读: Linux进程优先级 本篇…

无意的一次学习,竟让我摆脱了Android控制?

由于鸿蒙的爆火,为了赶上时代先锋。到目前为止也研究过很长一段时间。作为一名Android的研发人员,免不了对其评头论足,指导文档如何写才算专业?页面如何绘制?页面如何跳转?有没有四大组件等等。 而Harmony…

【数字经济】上市公司供应链数字化数据(2000-2022)

数据来源: 时间跨度:2000-2022年 数据范围:各上市企业 数据指标: 样例数据: 参考文献:[1]刘海建,胡化广,张树山,等.供应链数字化的绿色创新效应[J].财经研究,2023,49(03):4-18. 下载链接:https:…

neo4j-5.11.0安装APOC插件or配置允许使用过程的权限

在已经安装好neo4j和jdk的情况下安装apoc组件,之前使用neo4j-community-4.4.30,可以找到配置apoc-4.4.0.22-all.jar,但是高版本neo4j对应没有apoc-X.X.X-all.jar。解决如下所示: 1.安装好JDK与neo4j 已经安装对应版本的JDK 17.0…

Java快速入门系列-11(项目实战与最佳实践)

第十一章:项目实战与最佳实践 11.1 项目规划与需求分析项目规划需求分析实例代码 11.2 系统设计考虑实例代码 11.3 代码实现与重构实例代码 11.4 性能优化与监控实例代码 11.5 部署与持续集成/持续部署(CI/CD)实例代码 11.1 项目规划与需求分析 在进行任何软件开发…

Google Earth Engine谷歌地球引擎计算遥感影像在每个8天间隔内的多年平均值

本文介绍在谷歌地球引擎(Google Earth Engine,GEE)中,求取多年时间中,遥感影像在每1个8天时间间隔内的多年平均值的方法。 本文是谷歌地球引擎(Google Earth Engine,GEE)系列教学文章…

全双工音频对讲模块-支持空中升级、多级无线中继

SA618F30是一款高集成的大功率全双工无线音频模块,发射功率高达32dBm。该音频模块简化接口,只需外接音频功放或麦克风即可作为一个小型对讲机,方便快捷嵌入到各类手持设备中。支持多级无线中继,支持OTA空中升级。 SA618F30配备1W…

【前端】实现表格简单操作

简言 表格合并基础篇 本篇是在上一章的基础上实现,实现了的功能有添加行、删除行、逆向选区、取消合并功能。 功能实现 添加行 添加行分为在上面添加和在下面追加行。 利用 insertAdjacentElement 方法实现,该方法可以实现从前插入元素和从后插入元…

嘉楠堪智 CanMV K230 进行 Linux、RT-smart 系统开发

本文记录学习、使用 K230 SDK 进行 Linux、RT-smart 系统的开发的一些关键步骤,如何获取系统源代码,如何配置环境,如何使用 Docker 进行编译,获得系统文件。 具体详细的教程,可以学习 CanMV K230 教程。 目录 一、S…

引入 Redis

简介 Jedis Jedis 是早期的 Redis 的 Java 实现客户端,提供了比较全面的 Redis 命令的支持,其官方网址是:http://tool.oschina.net/uploads/apidocs/redis/clients/jedis/Jedis.html 优点:支持全面的 Redis 操作特性&#xff0…

搜狗输入法 PC端 v14.4.0.9307 去广告绿化版.

软件介绍 搜狗拼音输入法作为众多用户计算机配置的必备工具,其功能的全面性已为众所周知,并且以其高效便捷的输入体验受到广大使用者的青睐。然而,该软件在提供便利的同时,其内置的广告元素常常为用户带来一定的干扰。为此&#…

代码随想录算法训练营DAY48|C++动态规划Part9|121.买卖股票的最佳时机、122.买卖股票的最佳时机II、123.买卖股票的最佳时机III

文章目录 121.买卖股票的最佳时机思路CPP代码 122.买卖股票的最佳时机II思路CPP代码 123.买卖股票的最佳时机III思路CPP代码 121.买卖股票的最佳时机 力扣题目链接 文章讲解:121.买卖股票的最佳时机 视频讲解:动态规划之 LeetCode:121.买卖股…

由树形解空间入手,深入分析回溯、动态规划、分治算法的共同点和不同点

一、回溯、动态规划、分治 其实这三个算法就可以直接认为是一类算法,它们的共同点都是会涉及到递归。 更需要清楚明白的一点是,它们的解,都是基于一颗递归形式的树上得来的!也就是——回溯、动态规划、分治的解空间是 一棵树&am…

ssm+vue的私人健身和教练预约管理系统(有报告)。Javaee项目,ssm vue前后端分离项目。

演示视频: ssmvue的私人健身和教练预约管理系统(有报告)。Javaee项目,ssm vue前后端分离项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构,通…

深度学习常用优化算法笔记介绍,各种梯度下降法详细介绍

优化算法 mini-batch梯度下降法 当一个数据集其数据量非常大的时候,比如上百万上千万的数据集,如果采用普通的梯度下降法,那么运算速度会非常慢,因为如果使用梯度下降法在每一次迭代的时候,都需要将这整个上百万的数…

机器学习:基于TF-IDF算法、决策树,使用NLTK库对亚马逊美食评论进行情绪分析

前言 系列专栏:机器学习:高级应用与实践【项目实战100】【2024】✨︎ 在本专栏中不仅包含一些适合初学者的最新机器学习项目,每个项目都处理一组不同的问题,包括监督和无监督学习、分类、回归和聚类,而且涉及创建深度学…

第一天复习Qt文件读取

Qt文件操作: 1、QFile QTextStream操作文件案例: 1、打开文件 QFile file(absolute filepath | relative path); file.readLine()返回内容长度,如果为-1就是读取失败 file. Close()读取后关闭 file.errorString()返回文件打开发生的错误2、…

数据仓库实验三:分类规则挖掘实验

目录 一、实验目的二、实验内容和要求三、实验步骤1、创建数据库和表2、决策树分类规则挖掘(1)新建一个 Analysis Services 项目 jueceshu(2)建立数据源视图(3)建立挖掘结构 DST.dmm(4&#xff…

16.接口自动化学习-编码处理与装饰器

1.编码和解码 编码:将自然语言翻译成计算机可以识别的语言 hello–01010 解码:将机器识别的语言翻译成自然语言 2.编码格式 UTF-8 GBK unicode 3.编码操作 #编码操作str1"hello呀哈哈哈"str2str1.encode(gbk)print(str2)print(type(str2))…