keil的文件中.s文件是什么

keil的文件中.s文件是什么,第1张

keil的文件中.s文件是是汇编语言的扩展名。在链接的过程中,会用到一个描述文件,用来指定链接时的行为,这个描述文件叫做链接文件,如linux下的.ld文件,keil中的分散加载文件(.sct文件)。

默认设置下,keil会自动生成一个sct文件,如果没有特别需要,使用这一个默认分散加载描述文件就够了.但如果你要精确指定一些RAM区或者程序区的话,就要你自己写了,这个分散加载文件有一个格式的,最好看一下keil的帮助文件,因为这不是几句话就可以说的清的.给你一个我正在使用的sct文件,并简短注释一下:

LR_IROM1 0x00000000 0x00080000 {

ER_IROM1 0x00000000 0x00080000 { 可用的Flash区域,用256KB,从Flash启动

*.o (RESET, +First)

*(InRoot$$Sections)

.ANY (+RO)

}

RW_IRAM1 0x10000000 0x0000A000 { 普通读写数据,共40KB

.ANY (+RW +ZI )

}

RW_IRAM3 0x1000A000 0x00001000{ 存储冗余数据,共4KB

.ANY (MY_BK)

}

RW_IRAM2 0x1000B000 UNINIT 0x00001000 { 存储上电非零初始化区域,共4KB

.ANY (NO_INIT)

}

}

这个 其实就是 ld 连接程序的脚本,和Linux下的.lds文件类似!

ER_IROM1 0x08004000 0x08020000

{

vectors.o (VECT, +First)

init.o (INIT)

* (+RO)

}

意思就是 将 vectors.o 目标文件 中的 VECT 段,和 init.o的INIT 段 还有 所有目标文件的只读代码段 连接到 0x08004000 0x0802000 地址上

不清楚 可以追问 或者google lds 文件! 呵呵!


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11682392.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存