怎么才能知道单片机程序占了多少字节

发布者:JoyfulSpirit5最新更新时间:2024-07-12 来源: elecfans关键字:单片机  程序  字节 手机看文章 扫描二维码
随时随地手机看文章

对于单片机程序占了多少字节?单片机还剩多少存储空间?想必你看到这篇文章时对这两个问题也很迷糊吧,接下来我就把自己所了解到的关于单片机程序占用空间大小的问题做一个整理,方便自己也方便他人。

1、STM32类单片机在程序编译后会出现下面图片中所示内容

a70dddd4-be47-11eb-9e57-12bb97331649.png?imageView2/2/w/1000

上图中分别有Code、RO-data、RW-data、ZI-data,Code:表示所要执行的代码,程序中所有的函数都位于此处。RO-data:表示只读数据,程序中所定义的全局常量数据和字符串都位于此处。RW-data:表示已初始化的读写数据,程序中定义并且初始化的全局变量和静态变量位于此处。ZI-data:表示未初始化的读写数据,程序中定义了但没有初始化的全局变量和静态变量位于此处。通过上面的描述就可以看出:

下载到单片机FLASH的程序是:Code+RO-data+RW-data(上图中数据为字节数,kb=byte/1024);

运行在RAM中的数据是:

RW-data+ZI-data;

2、51类单片机编译后会有如下画面

a716b710-be47-11eb-9e57-12bb97331649.png?imageView2/2/w/1000

上图分别有data、xdata、const、code。data:片内RAM区消耗。xdata:片内扩展区RAM区消耗。code:表示所要执行的代码,程序中所有的函数都位于此处。下载到单片机FLASH中的程序大小为:code+const下载到单片机RAM的大小为:data+xdata


关键字:单片机  程序  字节 引用地址:怎么才能知道单片机程序占了多少字节

上一篇:教大家轻松解决RTC意外恢复到初始值问题
下一篇:手把手教你如何写单片机的结构体

推荐阅读最新更新时间:2026-03-22 15:58

怎么才能知道单片机程序占了多少字节
对于单片机程序占了多少字节?单片机还剩多少存储空间?想必你看到这篇文章时对这两个问题也很迷糊吧,接下来我就把自己所了解到的关于单片机程序占用空间大小的问题做一个整理,方便自己也方便他人。 1、STM32类单片机在程序编译后会出现下面图片中所示内容 上图中分别有Code、RO-data、RW-data、ZI-data,Code:表示所要执行的代码,程序中所有的函数都位于此处。RO-data:表示只读数据,程序中所定义的全局常量数据和字符串都位于此处。RW-data:表示已初始化的读写数据,程序中定义并且初始化的全局变量和静态变量位于此处。ZI-data:表示未初始化的读写数据,程序中定义了但没有初始化的全局变量和静态变量位于此处
[单片机]
怎么才能知道<font color='red'>单片机</font><font color='red'>程序</font>占了多少<font color='red'>字节</font>
单片机两个双字节无符号数相乘程序举例
本程序适用于Intel的51系统单片机 例 将(R2R3)和(R6R7)两个双字节无符号数相乘,结果送R4R5R6R7。 用移位和迭加的方式,步骤如下: 1)清部分积(高16位)R4R5=0。循环数16。 2)把R4R5R6R7右移一位,从最低位开始检查乘数R6R7的各个位。 3)如乘数位为1,则被乘数R2R3加到部分积R4R5中,否则不加。 4)循环数减1,不到16次再返回1)。 NMUL:MOV R4,#0 MOV R5,#0 ;积的高16位=0 MOV R0,#16 ;乘数16位二进制 CLR C NMLP:MOV A,R4 RRC A MOV R4,A MOV A,R5 RRC A MOV
[单片机]
字节无符号二进制数除法单片机汇编程序举例
例、 将(R2R3R4R5)除于(R6R7),商送(R4R5),余数送(R2R3)。模拟手算方法: 1)从被除数高位开始对齐除数,比较。 2)若前者大于或等于后者,商位为1,并把被除数减除数,形成部分余数。若前者小于后者,商位为0。 3)部分余数左移一位,商也左移一位。 4)整个余数若小于除数,则退出。 5)部分余数从高位开始与除数比较 6)到第2)步。 若被除数高16位大于或等于除数,则溢出。 NDIV:MOV A,R3 CLR C SUBB A,R7 ;先比较是否发生溢出 MOV A,R2 SUBB A,R6 JNC NDVE1 ;溢出 MOV B,#16 ;无溢出,16位 NDVL1:CLR C
[单片机]
单片机两个双字节无符号数相乘程序举例
本程序适用于Intel的51系统单片机 例 将(R2R3)和(R6R7)两个双字节无符号数相乘,结果送R4R5R6R7。 用移位和迭加的方式,步骤如下: 1)清部分积(高16位)R4R5=0。循环数16。 2)把R4R5R6R7右移一位,从最低位开始检查乘数R6R7的各个位。 3)如乘数位为1,则被乘数R2R3加到部分积R4R5中,否则不加。 4)循环数减1,不到16次再返回1)。 NMUL:MOV R4,#0 MOV R5,#0 ;积的高16位=0 MOV R0,#16 ;乘数16位二进制 CLR C NMLP:MOV A,R4 RRC A MOV R4,A MOV A,R5 RRC A MOV
[单片机]
一种实用的单片机字节除法程序
在单片机的实际应用中,除法运算是以比较常见的运算。 以MCS-51单片机为例,虽然提供了除法指令,但只能进行单字节的运算。如果要进行多字节的除法运算,就得自己设计算法。目前,许多资料上都介绍了四字节除以二字节的算法,但它们主要有以下几点不足: 1. 只能求出商,不能求出余数; 2. 在被除数高二字节大于除数时,不能进行运算; 3. 商只有两个字节。 例如,被除数是0FFFFFFFFH,除数是0004H时,商数应该是3FFFFFFFH,余数是0003H。 但是,用以前的算法是无法进行运算的。 在实际运用中,参与运算的数是任意的,有时需要求出余数,有时商数要求有四个字节,因此,以前的算法在实际应用中受到了很大的限制。 为了满
[单片机]
一种实用的单片机字节除法程序
在单片机的实际应用中,除法运算是以比较常见的运算。 以MCS-51单片机为例,虽然提供了除法指令,但只能进行单字节的运算。如果要进行多字节的除法运算,就得自己设计算法。目前,许多资料上都介绍了四字节除以二字节的算法,但它们主要有以下几点不足: 1. 只能求出商,不能求出余数; 2. 在被除数高二字节大于除数时,不能进行运算; 3. 商只有两个字节。 例如,被除数是0FFFFFFFFH,除数是0004H时,商数应该是3FFFFFFFH,余数是0003H。 但是,用以前的算法是无法进行运算的。 在实际运用中,参与运算的数是任意的,有时需要求出余数,有时商数要求有四个字节,因此,以前的算法在实际应用中受到了很大的限制。 为了满
[单片机]
RL78F2x系列MCU选项字节与安全ID的多环境配置指南
以下内容为开篇引言: 在RL78F2x系列的项目开发中,正确设置Opon By(选项字节)和Security ID(安全ID)是保证芯片安全、配置工作模式(如、低电压检测、复位引脚等)的关键一步。面对不同的开发环境,设置方法也各不相同。本文将手把手教你如何在主流的CS+for CC、e2studio和IAR Embedded Workbench中完成这两项重要配置。 一、 基础概念:它们是什么? 01 Option Byte(选项字节): 用于配置MCU的硬件工作模式,例如: 看门狗的启动模式和周期 低电压检测的模式和设定 内部高速的频率 复位引脚功能(是复位引脚
[嵌入式]
RL78F2x系列<font color='red'>MCU</font>选项<font color='red'>字节</font>与安全ID的多环境配置指南
STM32单片机接收不定长度字节数据的方法解析
今天说一下STM32单片机的接收不定长度字节数据的方法。由于STM32单片机带IDLE中断,所以利用这个中断,可以接收不定长字节的数据,由于STM32属于ARM单片机,所以这篇文章的方法也适合其他的ARM单片机。 IDLE中断什么时候发生? IDLE就是串口收到一帧数据后,发生的中断。什么是一帧数据呢?比如说给单片机一次发来1个字节,或者一次发来8个字节,这些一次发来的数据,就称为一帧数据,也可以叫做一包数据。 如何判断一帧数据结束,就是我们今天讨论的问题。因为很多项目中都要用到这个,因为只有接收到一帧数据以后,你才可以判断这次收了几个字节和每个字节的内容是否符合协议要求。 看了前面IDLE中断的定义,你就会明白了,一帧数据结
[单片机]
STM32<font color='red'>单片机</font>接收不定长度<font color='red'>字节</font>数据的方法解析
小广播
最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

厂商技术中心

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2026 EEWORLD.com.cn, Inc. All rights reserved