源代码,经编译器,生成可重定位的代码块和数据块(称为段-section).

然后经连接器,将这些段分配到目标存储器。

可通过.cmd文件用两个伪指令来定义连接:

memory – 定义存储器各部分的起始地址和长度

sections – 定义把各个段放在存储器的什么位置

可通过生成.map文件来观察代码和数据空间的映射关系。

CCS例程中的一个.cmd文件如下:

MEMORY
{
IPRAM : origin = 0×0, len = 0×10000
IDRAM : origin = 0×80000000, len = 0×10000
}

SECTIONS
{
.vectors > IPRAM
.text > IPRAM

.bss > IDRAM
.cinit > IDRAM
.const > IDRAM
.far > IDRAM
.stack > IDRAM
.cio > IDRAM
.sysmem > IDRAM
}