博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Keil-MDK编译完成后代码大小
阅读量:4514 次
发布时间:2019-06-08

本文共 766 字,大约阅读时间需要 2 分钟。

Code 代表执行的代码,程序中所有的函数都位于此处。

RO-data 代表只读数据,程序中所定义的全局常量数据和字符串都位于此处。

RW-data 代表已初始化的读写数据,程序中定义并且初始化的全局变量和静态变量位于此处。

ZI-data 代表未初始化的读写数据,程序中定义了但没有初始化的全局变量和静态变量位于此处。

KEIL RVMDK编译后的信息

Program Size: Code=86496 RO-data=9064 RW-data=1452 ZI-data=16116

这些参数的单位是Byte,几个参数分别代表含义如下: 

1KB=1024B;1MB=1024KB=1024×1024B。其中1024=2^10。
1B(byte,字节)= 8 bit(见下文);
1KiB(Kibibyte,)=1024B= 2^10 B;
1(Mebibyte,,百万字节,简称“兆”)=1024KB= 2^20 B;

Code是代码占用的空间;

RO-data是 Read Only 只读常量的大小,如const型;

RW-data是(Read Write)初始化了的可读写变量的大小;

ZI-data是(Zero Initialize)没有初始化的可读写变量的大小。ZI-data不会被算做代码里因为不会被初始化;

简单的说就是在烧写的时候是FLASH中的被占用的空间为:Code+ RO Data + RW Data

程序运行的时候,芯片内部RAM使用的空间为:              RW Data + ZI Data

 

文章参考:https://blog.csdn.net/fxh296249331/article/details/50721896

转载于:https://www.cnblogs.com/wt88/p/9641693.html

你可能感兴趣的文章
第一次作业:深入源码分析进程模型
查看>>
彻底理解ThreadLocal
查看>>
[Intermediate Algorithm] - Spinal Tap Case
查看>>
场景设计方法
查看>>
python2x与python3x的区别
查看>>
SQL SERVER 自定义函数
查看>>
洛谷P1031 均分纸牌
查看>>
高性能NIO通信框架之Netty入门(二)-----TCP粘包/拆包
查看>>
FreeMarker初探--安装FreeMarker
查看>>
Eclipse git pull 报Nothing to fetch 异常原因
查看>>
Java中封装类型.valueOf()
查看>>
精品资源:40个实用的 PSD 贴纸模板《下篇》
查看>>
【面试题】BD
查看>>
【面试】链表反转
查看>>
素数距离问题_ny_24.java
查看>>
总结A*,Dijkstra,广度优先搜索,深度优先搜索的复杂度比较
查看>>
报错An internal error occurred during: "reload maven project". java.lang.NullPointerException
查看>>
JSP中include指令和include动作的区别
查看>>
ios中创建控制器的几种方式
查看>>
MySQL中TEXT与BLOB字段类型的区别
查看>>