分  享 
分  享 
源  码 
源  码 
课  程 
课  程 
设  计 
设  计 

[网站建设] 【PDF教材】《CCS中CMD文件的作用》

[复制链接]
密探007邮箱认证 微信认证 发表于 2017-4-12 10:08:34 | 显示全部楼层 |阅读模式
「智能推荐」
【PDF教材】《C#网络应用编程(第2版) (马俊)》中文PDF版(含源码) 【PDF教材】《C#入门经典(第7版) C# 6.0 & Visual Studio 2015》完整版-中文pdf
【PDF教材】《C++大学教程(第九版)》保罗·戴特尔(Paul Deitel)-完整中文pdf版

欢迎加入「奥学网」学霸平台,让自学改变你的世界!

您需要 登录 才可以下载或查看,没有帐号?账号注册

x
CCS中CMD文件的作用
cmd 文件用于DSP 代码的定位。由于DSP 的编译器的编译结果是未定位的,DSP没有操作系统来定位执行代码,每个客户设计的DSP 系统的配置也不尽相同,因此需要用户自己定义代码的安装位置。安装位置是指,编译完成的代码是存放在dsp的那个位置,程序空间RAM或者数据空间RAM,起始地址以及长度。

以C5000 为例,基本格式为:
-o sample.out                                  //生成.OUT文件

-m sample.map                               //生成MAP文件,MAP文件中包含程序的section信息,用于自举表信息的编写和烧写flash

-stack 100                                      //开辟堆栈

sample.obj meminit.obj                  

-l rts.lib                                           //链接rts.lib库

MEMORY
{
PAGE 0: VECT: origin = 0xff80, length 0x80                        //page0一般是程序空间,

PAGE 0: PROG: origin = 0x2000, length 0x400

PAGE 1: DATA: origin = 0x800, length 0x400                     //page1一般是数据空间
}

SECTIONS
{
.vectors : {} >VECTPAGE 0                                               //.vectors段是中断向量表,存放在程序空间VECT部分 //   

.text : {} >PROG PAGE 0                                                   // .text 是程序段,放在程序空间 PROG部分

.data : {} >PROG PAGE 0                                                 //.data是数据段,放在程序空间PROG部分,紧接.text 之后
.cinit : {} >PROG PAGE 0                                                  //.cinit 段包含了变量初始化记录                                                                                          
.bss : {} >DATA PAGE 1                                                    //.bss段是未初始化段,放在数据空间DATA部分

}

连接器会自动创建以下的段:
The C54x compiler creates the following sections:
初始化段包含数据和可执行代码。 The C/C++ compiler creates the following initialized sections:
.cinit section:包含变量和常量的初始化表.
.pinit section contains the table for calling global object constructors at runtime.
.const section contains string constants and data defined with the C/C++ qualifier const (provided the constant is not also defined as volatile).
The .switch section contains tables for large switch statements.
The .text section contains all the executable code as well as string literals and compiler-generated constants.
Uninitialized sections reserve space in memory (usually RAM). A program can use this space at runtime for creating and storing variables. The compiler creates the following uninitialized sections:
The .bss section reserves space for global and static variables. When you specify the -c linker option, at program startup, the C/C++ boot routine copies data out of the .cinit section (which can be in ROM) and stores it in the .bss section.
The .stack section allocates memory for the C/C++ system stack. This memory passes variables.
The .sysmem section reserves space for dynamic memory allocation. The reserved space is used by the malloc, calloc, and realloc functions. If a C/C++ program does not use these functions, the compiler does not create the .sysmem section.

在一般的使用中,主要会用到.cinit  .bss .stack段
在自举表中,.vect .text .cinit 这三个段是必不可少的





上一篇:【WORD教材】《Dreamweaver制作数据库页面》中文版
下一篇:【PDF教材】《SQL Server 2008报表服务从入门到精通》(美)Stacia Misner PDF高清版

 

 

楼 主 推 荐
BPsd 发表于 2017-4-22 20:33:44 | 显示全部楼层
嗯嗯很好感谢楼主支持过哦++++
回复 支持 反对

使用道具 举报

rEXVY 发表于 2017-4-29 14:59:04 | 显示全部楼层
呀咩喋草泥马~好可爱好萌有木有?
回复 支持 反对

使用道具 举报

dC8xq 发表于 2017-5-4 19:37:50 | 显示全部楼层
看贴回复是好习惯
回复 支持 反对

使用道具 举报

KpFhwm 发表于 2017-5-6 05:35:02 | 显示全部楼层
直接覆盖破解补丁就可以了,很方便,学到了,谢谢楼主
回复 支持 反对

使用道具 举报

NDD2L 发表于 2017-5-31 03:02:52 | 显示全部楼层
阿奇
回复 支持 反对

使用道具 举报

6Cvg 发表于 2017-6-14 08:26:56 | 显示全部楼层
嘿...反了反了,,,,
回复 支持 反对

使用道具 举报

hFV5Vb 发表于 2017-6-20 22:05:28 | 显示全部楼层
楼主也是培训师吗
回复 支持 反对

使用道具 举报

22w1SJ 发表于 2017-6-21 19:43:51 | 显示全部楼层
支持奥学网一下,期待在来年更拽、更酷(PS:「F码」不要再涨了5555……)
回复 支持 反对

使用道具 举报

uS9r9 发表于 2017-6-22 00:36:54 | 显示全部楼层
对不起,我走错地方了,呵呵
回复 支持 反对

使用道具 举报

快速回复 收藏帖子 返回列表
加密...

SiteMap|奥学网 ( 闽ICP备12011685号-6 )|随机浏览

闽公网安备35021202000025号

Xtreme-aesthetic Design

© 2012~Now 6SO.SO

快速回复 返回顶部 返回列表