[资料分享] CCS5.5 CMD文件小结

Jacktang   2017-9-16 20:56 楼主
Section目標文件中最小單位稱为塊,一個塊就是最終在存儲器映象中占據連續空間的一段代碼或數據。
1、COFF目標文件包含三個默認的塊:
.text可執行代碼
.data已初始化數據
.bss为未初始化數據保留的空間
2、匯編器對塊的處理
未初始化塊
                        .bss      變量存放空間
                        .usect    用戶自定義的未初始化段
初始化塊
                        .text     匯編指令代碼
                        .data     常數數據(比如對變量的初始化數據)
                        .sect     用戶自定義的已初始化段
                        .asect    通.sect,多了絕對地址定位功能,一般不用

3、C語言的段
未初始化塊(data)
                        .bss      存放全局和靜態變量
                        .ebss     長調用的.bss(超過了64K地址限制)
                        .stack    存放C語言的棧
                        .sysmem   存放C語言的堆
                        .esysmem  長調用的.sysmem(超過了64K地址限制)
初始化塊
                        .text     可執行代碼和常數(program)
                        .switch   switch語句產生的常數表格(program/低64K數據空間)
                        .pinit    Tables for global constructors (C++)(program)
                        .cinit    用來存放對全局和靜態變量的初始化常數值(program)
                        .const    全局和靜態的const變量初始化值和字符串常數,(data)
                        .econst   長.const(可定位到任何地方)(data)

回复评论

暂无评论,赶紧抢沙发吧
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复