嵌入式软件设计(数据段——最容易面试被问倒的问题)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

        和上位机程序不同,一般的嵌入式程序都是需要自己构建Makefile,自己构建linkfile的。很多同学可能有不同意见,他们会说,自己也做嵌入式但是却没有遇到过类似的场合。说实话,那是因为是IDE替我们做了。

        在嵌入式中,不管最后烧入到flash的是什么文件,一般都会包括数据段和代码段。代码段顾名思义,就是不同function、不同class编译而成的汇编指令。那么数据段呢,我们真的了解吗?

1、全局未初始化段

        在数据段中,这部分一般被命名为bss段。上电后需要进行初始化为0的处理工作。实际代码编写一般是这样的,

int data;

2、全局初始化段

        和未初始化段不同,全局数据还有一种情况,那就是初始化段,这一部分也是需要注意的。还是拿data举例,它可能是这样的,

int data = 10;

3、只读数据段

        只读数据段多出现在字符串数据中,可能出现在全局变量中,也可能出现在函数的局部变量中。这里,我们仅仅以

猜你喜欢

转载自blog.csdn.net/feixiaoxing/article/details/125037504
今日推荐