12.bss段的初始化

摘要:
从以上编译的信息中,我们知道Bss段的起始地址:0001052c Bss段结束地址:00010534 hello变量的地址:00010530是Bss段中的地址。所以有一个bss段。这意味着未初始化的全局变量存储在bss部分中。接下来,我们将初始化bss段:在链接器脚本中,我们有bss段的起始地址和结束地址:start。S代码实现:制作后测试。

12.bss段的初始化

在C代码:有初始化全局的数据段,局部的栈,malloc部分的堆,未初始化的全局的bss段。

12.bss段的初始化第1张

12.bss段的初始化第2张

12.bss段的初始化第3张

从上面的编译的信息知道:

Bss段的起始地址:0001052c

Bss段的结束地址:00010534

我们的hello变量的地址:00010530是落在bss段里的地址的。所以是存在bss段的。这就是未初始化的全局变量存放在bss段。

接下来我们就来初始化bss段:

在我们的链接器脚本,有我们bss段的起始地址和结束地址:

12.bss段的初始化第4张

start.S的代码实现:

12.bss段的初始化第5张

Make后测试。

免责声明:文章转载自《12.bss段的初始化》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇分享一个换肤解决方案Vue-CLI项目搭建下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

SpringBoot项目启动时执行初始化操作

SpringBooot中的CommandLineRunner接口会在所有Spring Beans初始化之后,SpringApplication.run()之前执行。 1.添加pom引用 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.o...

【STM32H7教程】第13章 STM32H7启动过程详解

完整教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第13章       STM32H7启动过程详解 本章教程主要跟大家讲STM32H7的启动过程,这里的启动过程是指从CPU上电复位执行第1条指令开始(汇编文件)到进入C程序main()函数入口之间的部分。启动过程相对来说...

android精品开源项目整理

转载地址:http://www.eoeandroid.com/thread-311366-1-1.html 前言:无论你是android的初学者,还有是Android开发了好多年的高手,可能都会有很多想法和经验希望与人分享交流,渴望能够接触到更多的项目实战,正所谓所谓与高手论道才能互补所长,与英雄共鼎方能百尺竿头,一味的织履贩席闭门造车只能固步自封成为...

eeprom AT24C512 i2c总线的特点 来自eeleader的博客

今天花费了一天时间,研究i2c总线的特点。因为我要用FPGA设计操作i2c总线的时序.i2c总线是常用的串行总线。我要操作的串行eeprom AT24C512。该EEPROM 容量是512KBIT,内部按照每页128字节组织,总共是512页。根据我的设计构思,准备使用PAGE WIRET 和随机连续读 两种命令方式。读写准备按照页方式进行。根据我上面的要求...

linux内核内存分配(三、虚拟内存管理)

        在分析虚拟内存管理前要先看下linux内核内存的具体分配我開始就是困在这个地方。对内核内存的分类不是非常清晰。我摘录当中的一段: 内核内存地址==================================================================================================...

Spring常用注解与J2EE注解总结

Spring注解 1)@Component 作用:调用无参构造函数创建一个bean对象,并把对象存入spring的ioc容器,并交由spring容器进行管理,相当于在xml中配置一个<bean>。 属性:value:id默认按照当前bean的类名,首字母小写,可以在使用时指定value名称。 2)@Repository 作用:与@Compone...