什么是程序映像
程序映像
Cortex-M0的程序映像一般包含下面几个部分
■向量表;
■C启动例程;
■程序代码(应用程序代码和数据);
■C库代码(C库函数的程序代码,链接时插人)。
向量表
这个在启动文件中,可以采用C语言或者汇编语言来实现。
C启动代码
C启动代码用于设置像全局变量之类的数据,也会清零加载时未被初始化的内存区域。对于使用malloc()等C函数的应用程序,C启动代码还需要初始化堆空间的控制变量。初始化完成后,启动代码跳转到main()程序执行。
程序代码
用户指定的任务是由应用程序生成的指令完成的,除了指令以外,还有以下各类数据:
■变量的初始值,函数或子程序中的局部变量需要初始化,这些初始值会在程序执行期间被赋给相应的变量。
■程序代码中的常量,应用程序中的常量数据有多种用法,如数据值、外设寄存器的地址和常量字符串等,这些数据在程序映像中- .般作为数据块放在一起,并被称作***文字库***。
●有些应用程序可能也会包括其他的常量,比如查找表和图像数据(如位图),它们也被合并在程序映像中。