CMD文件简介与预编译指令#pragma的使用ss
时间:10-02
整理:3721RD
点击:
一、CMD文件
CMD文件(Linker Command Files)是编译完成后链接各个目标文件时,用来指示各个数据、符号等是如何划分到各个段,以及每个段所使用的存储空间的。
CMD文件关键字:
其中常用的是MEMORY,SECTIONS
MEMORY是用来划分内存分配表;
SECTIONS用来指定各个段所属内存区域。
二、#pragma预编译指令
三、例子
指定变量i,k到DataSH段
往下拉,看以看到定义的变量i,k具体的内存地址
CMD文件(Linker Command Files)是编译完成后链接各个目标文件时,用来指示各个数据、符号等是如何划分到各个段,以及每个段所使用的存储空间的。
CMD文件关键字:
- MEMORY
- SECTIONS
- align ALIGN
- attr ATTR
- LENGTH length len l
- ORIGIN origin org o
- PAGE page
- RUN run
- LOAD load
- Copy
- fill FILL
- TYPE type
- ......
其中常用的是MEMORY,SECTIONS
MEMORY是用来划分内存分配表;
SECTIONS用来指定各个段所属内存区域。
二、#pragma预编译指令
- #pragma CODE_SECTION 指定代码所属段
- #pragma DATA_SECTION 指定数据所属段
- #pragma SET_CODE_SECTION
- #pragma SET_DATA_SECTION
- #pragma DATA_ALIGN 指定变量字节对齐
三、例子
指定变量i,k到DataSH段
- #pragma SET_DATA_SECTION(".DataSH")
- unsigned int i;
- unsigned char k;
- #pragma SET_DATA_SECTION()
- .DataSH > SHRAM
往下拉,看以看到定义的变量i,k具体的内存地址