亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? cdbfileformat.txt

?? This a FREE tool chain which compiles C codes into 8051 binary code, converts the binary to RTL ROM,
?? TXT
?? 第 1 頁 / 共 3 頁
字號:


CDB File Format

Lenny Story

SDCC Development Team

Table of Contents

    1 Overview
    2 Usage
    3 Conventions
    4 Record Formats
        4.1 Basic Record Format
        4.2 Module Record
        4.3 Symbol Records
        4.4 Type Chain Record
        4.5 Function Records
        4.6 Type Records
        4.7 Type Member
        4.8 Link Address of Symbol
        4.9 Linker Symbol End Address Record
        4.10 Linker ASM Line Record
        4.11 Linker C-Line Record
    5 Source File Example 
    6 CDB File Example



1 Overview

The CDB File is used to record all of the information 
that describes the variables, functions, lines, and 
memory items. These records provide the critical 
information that allows external utilities to properly 
locate and interpret variables, functions, and types. 
Development tools such as simulators debuggers and 
profilers use these records to analyze and describe the 
code in terms of the high level language in which it 
was written. The CDB file is therefore the critical 
link to bridging the compiled code image to the source 
files from which it was built.

2 Usage

CDB files are created when the "--debug" option is 
used. Each source file will have its own CDB file 
associated with it. When the --debug flag is used 
during the link process, the CDB file of the FIRST 
source module will contain all the records from all the 
source modules linked as well as the linker records.

Code and variables that are removed during the 
optimization phase will not be present in the debug 
file. Images created for debugging purposes should 
always disable as much optimization as possible. The 
following options are critical for the completeness of 
the resulting debugging file.

--debug Mandatory to produce a debugging file. 

--noinduction Induction processing occurs at the very 
latest stages of compilation. This results in the 
inability to report the location of the resulting 
variables. Including this option disables the loop 
induction optimization. 

--nooverlay Overlay variables will not show up in the 
debug file. Including this option will force variables 
to the data segment.

3 Conventions

The record examples and grammar shown in this document 
are displayed on multiple lines only for the purposes 
of readability. The records contained within the CDB 
files are always encoded on a single line. 

Record grammar is indicated here using a custom format 
of the following specifications:

* Record Elements are surrounded using the characters 
  `<' and '>'.

* Alternation is indicated using the `|' character.

* Non-mandatory items are surrounded using the 
  characters `{` and `}'.

4 Record Formats

4.1 Basic Record Format

  <RecordType><:><RecordSpec>

+---------+------------------------------------+----------------------+
| 

Type  | 

Description                      | 

Form               |
+---------+------------------------------------+----------------------+
+---------+------------------------------------+----------------------+
|  

M    | 

Module Record                    | 

Compiler           |
+---------+------------------------------------+----------------------+
|  

F    | 

Function Record                  | 

Compiler           |
+---------+------------------------------------+----------------------+
|  

S    | 

Symbol Record                    | 

Compiler           |
+---------+------------------------------------+----------------------+
|  

T    | 

Structure (Complex Type) Record  | 

Compiler           |
+---------+------------------------------------+----------------------+
|  

L    | 

Linker Record                    | 

Assembler / Linker |
+---------+------------------------------------+----------------------+


All records are ASCII text, with one record per line. 
The record type is the first character, followed by a 
single colon ":". Sub types are often included as part 
of the record specific format.

4.2 Module Record

  <M><:><Filename>

+-------------+-------------------------------------------------------------+
|    

M      | 

Module record type indicator                              |
+-------------+-------------------------------------------------------------+
| 

Filename  | 

The filename of the module that this CDB file represents. |
+-------------+-------------------------------------------------------------+


Purpose

The module record is used to define a source module. It 
is usually used at the beginning of each of the module 
specific CDB files, and will occur several times in the 
final CDB file produced by the linker to represent each 
of the source modules. The location of this record 
within the file does not necessarily indicate the scope 
of the variables that follow. Those variables that have 
module specific scope have an indication encoded within 
their respective symbol entry.

Examples

M:Timer0
M:_bp

4.3 Symbol Records

+-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|        

S        |  

Symbol record type indicator                                                                                                                                             |
+-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|        

G        |  

Scope is global                                                                                                                                                          |
+-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|  

F <Filename>   |  

Scope is file                                                                                                                                                            |
+-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|  

L <Function>   |  

Scope is local                                                                                                                                                           |
+-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|     

<Name>      |  

Symbol name                                                                                                                                                              |
+-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|     

<Level>     |  

Scope level (see below)                                                                                                                                                  |
+-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|     

<Block>     |  

Scope block (see below)                                                                                                                                                  |
+-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|   

<TypeChain>   |  

Type chain record (see type record below)                                                                                                                                |
+-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 

<Address Space> |  

Address space code (see table below)                                                                                                                                     |
+-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|   

<On Stack>    |  

Is this symbol on the stack? Indicates if the next 
parameter is valid.                                                                                                  |
+-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|     

<Stack>     |  

The stack Offsetorelative to the "bp" variable. (The 
libraries may have to be recompiled to include the -
-debug option for this variable to appear in the debug file). |
+-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|      

<Reg>      |  

If the address space is 'R', this field indicates the 
register that the symbol is allocated. The register 
name is in its native form: R1, AX, etc.                     |
+-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


  <S><:>
{ G | F<Filename> | L { <function> | "--null--" }}
<$><Name>

  <$><Level>
<$><Block>
<(><TypeRecord><)>
<,><AddressSpace>

  <,><OnStack>
<,><Stack>
<,><[><Reg><,>{<Reg><,>}<]>

A symbol record is generated for each named symbol in 
the source file; this includes local, global and 
parameter symbols. 

Blocks and Levels

The level & block are used to further scope local 
variables since C allows unique definitions across 
different scope blocks. When using the symbol records, 
it is always important to include the level and block 
information as part of the identification. It is 
possible to have two symbols that share the same name, 
but have different scope information.

The linker address records contain not only the name of 
the symbol, but the Scope information as well, which is 
instrumental in determining the correct instantiation 
of the symbol.

Linker C line records also contain the Scope 
information (see below).

The following code fragment illustrates a simple scope example:

foo()

{

int c; /* block #1 , level #1 */

   {

      int c; /* block #2, level #2 */

      ...

   }

   {

      int c; /* block #3 , level #2 */

      ...

   }

}

+------+----------------------------------------------------------+
| 

A  | 

External stack                                         |
+------+----------------------------------------------------------+
| 

B  | 

Internal stack                                         |
+------+----------------------------------------------------------+
| 

C  | 

Code                                                   |
+------+----------------------------------------------------------+
| 

D  | 

Code / static segment                                  |
+------+----------------------------------------------------------+
| 

E  | 

Internal ram (lower 128) bytes                         |
+------+----------------------------------------------------------+
| 

F  | 

External ram                                           |
+------+----------------------------------------------------------+
| 

G  | 

Internal ram                                           |
+------+----------------------------------------------------------+
| 

H  | 

Bit addressable                                        |
+------+----------------------------------------------------------+
| 

I  | 

SFR space                                              |
+------+----------------------------------------------------------+
| 

J  | 

SBIT space                                             |
+------+----------------------------------------------------------+
| 

R  | 

Register space                                         |
+------+----------------------------------------------------------+
| 

Z  | 

Used for function records, or any undefined space code |
+------+----------------------------------------------------------+


4.4 Type Chain Record

  <{><Size><}> <DCLType> <,> {<DCLType> <,>} <:> <Sign>

+--------------+------------------------------------------------+
|  

<Size>    | 

The size of the item in decimal.             |
+--------------+------------------------------------------------+
| 

<DCLType>  | 

The type encoded using the table below.      |
+--------------+------------------------------------------------+
|  

<Sign>    | 

The sign of the item. Encoded as 'U' or 'S'. |
+--------------+------------------------------------------------+


Purpose

The C programming language allows arbitrarily complex 
type constructions. Because of this, the CDB file type 
designations are organized as a list of basic primitive types.

+--------------+----------------------------+
|  

DA <n>    | 

Array of n elements      |
+--------------+----------------------------+
|    

DF      | 

Function                 |
+--------------+----------------------------+
|    

DG      | 

Generic pointer          |
+--------------+----------------------------+
|    

DC      | 

Code pointer             |
+--------------+----------------------------+
|    

DX      | 

External ram pointer     |
+--------------+----------------------------+
|    

DD      | 

Internal ram pointer     |
+--------------+----------------------------+
|    

DP      | 

Paged pointer            |
+--------------+----------------------------+
|    

DI      | 

Upper 128 byte pointer   |
+--------------+----------------------------+

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人白浆超碰人人人人| 欧美日韩日日骚| 亚洲在线观看免费| 久久精品视频网| 欧美日本一道本在线视频| www.激情成人| 经典三级视频一区| 日韩成人免费看| 一片黄亚洲嫩模| 亚洲丝袜另类动漫二区| 国产午夜精品美女毛片视频| 欧美另类久久久品| 91福利在线观看| 92精品国产成人观看免费| 国产麻豆一精品一av一免费 | 欧美精品亚洲一区二区在线播放| 成人高清视频在线观看| 国产一区二区在线观看免费| 日本亚洲一区二区| 午夜激情一区二区| 一区二区日韩电影| 亚洲另类在线制服丝袜| 国产精品动漫网站| 国产精品高潮呻吟久久| 国产日韩av一区二区| 久久久久国产精品免费免费搜索| 日韩欧美的一区| 日韩一区二区麻豆国产| 欧美欧美欧美欧美| 欧美三日本三级三级在线播放| 色嗨嗨av一区二区三区| 色噜噜狠狠成人中文综合| 色婷婷综合久久久中文一区二区 | 日韩女优毛片在线| 日韩三区在线观看| 精品国产免费人成电影在线观看四季| 在线不卡中文字幕播放| 欧美老肥妇做.爰bbww| 欧美日韩精品高清| 91精品国产综合久久精品app| 欧美亚洲综合色| 欧美日韩中字一区| 91精品国产综合久久小美女| 制服丝袜在线91| 欧美成人伊人久久综合网| 日韩免费成人网| 久久综合网色—综合色88| 国产午夜精品在线观看| 国产精品国模大尺度视频| 综合网在线视频| 一区二区三区免费看视频| 亚洲成人综合在线| 美美哒免费高清在线观看视频一区二区 | 精品一区二区三区免费观看| 久久精品国产77777蜜臀| 国产一区在线视频| 99精品1区2区| 欧美亚洲高清一区| 日韩一级大片在线观看| 国产喂奶挤奶一区二区三区| 国产精品视频一二三| 亚洲精品中文字幕乱码三区| 亚洲高清免费在线| 久草精品在线观看| gogo大胆日本视频一区| 欧美天天综合网| 精品1区2区在线观看| 国产精品伦理在线| 三级欧美在线一区| 丁香一区二区三区| 欧美色爱综合网| 久久伊人中文字幕| 一区二区三区欧美久久| 久久机这里只有精品| 91年精品国产| 日韩一级黄色大片| 亚洲欧美视频在线观看| 青椒成人免费视频| 91在线porny国产在线看| 4438x成人网最大色成网站| 国产欧美一区二区精品久导航 | 欧美国产精品一区二区三区| 一级中文字幕一区二区| 狠狠色丁香久久婷婷综合丁香| 色综合亚洲欧洲| 久久蜜臀精品av| 天天av天天翘天天综合网色鬼国产| 国精产品一区一区三区mba视频| 91免费视频大全| 精品国产一区二区三区四区四| 亚洲激情图片qvod| 国产凹凸在线观看一区二区| 欧美体内she精高潮| 国产精品视频免费| 美女网站视频久久| 91豆麻精品91久久久久久| 2017欧美狠狠色| 水蜜桃久久夜色精品一区的特点| 成年人国产精品| 亚洲精品在线一区二区| 午夜国产精品一区| 99re视频这里只有精品| 久久婷婷国产综合精品青草| 丝袜a∨在线一区二区三区不卡| 成人黄色免费短视频| 精品99999| 首页欧美精品中文字幕| 色婷婷av一区二区三区gif| 国产日韩精品一区| 国产一区二区三区久久久| 91精品婷婷国产综合久久性色 | 成人一区在线看| 欧美成人精品高清在线播放| 亚洲国产日韩一级| 97久久精品人人爽人人爽蜜臀| 久久综合九色综合97婷婷 | 91激情五月电影| 中文字幕在线视频一区| 国产福利一区二区三区视频| 欧美不卡123| 久久国产欧美日韩精品| 欧美一区二区三区色| 天天影视网天天综合色在线播放 | 欧洲色大大久久| 国产精品国产自产拍高清av| 国产乱人伦偷精品视频免下载| 日韩一区二区电影网| 蜜臀av一区二区在线观看| 欧美日韩一级二级| 亚洲电影中文字幕在线观看| 日本高清不卡一区| 亚洲第一主播视频| 欧美在线观看一二区| 亚洲高清中文字幕| 欧美年轻男男videosbes| 天涯成人国产亚洲精品一区av| 欧美日韩一级视频| 日本成人超碰在线观看| 欧美一级理论性理论a| 毛片av一区二区| 亚洲精品在线免费观看视频| 国产综合久久久久影院| 国产清纯在线一区二区www| 丁香啪啪综合成人亚洲小说| 亚洲欧洲精品成人久久奇米网| 色综合天天综合网国产成人综合天| 一区二区三区日韩精品| 欧美三级资源在线| 免费成人av在线| 久久久久久久久久久久久久久99| 国产成人精品影院| 国产精品久久久久久久久动漫| 99精品久久免费看蜜臀剧情介绍| 一片黄亚洲嫩模| 日韩免费视频一区| 国产aⅴ综合色| 一区二区三区日韩| 日韩一区二区三区在线| 国产成人精品免费| 一区二区三区av电影| 欧美一卡二卡在线| 国产精品一品二品| 亚洲自拍偷拍欧美| 欧美一级免费大片| www.亚洲色图.com| 亚洲一区二区三区免费视频| 日韩欧美成人一区| 9色porny自拍视频一区二区| 艳妇臀荡乳欲伦亚洲一区| 日韩视频永久免费| 99精品国产视频| 久久99最新地址| 亚洲天堂2014| 精品国产区一区| 91成人看片片| 国产91丝袜在线播放0| 亚洲国产婷婷综合在线精品| 久久久久99精品一区| 欧洲日韩一区二区三区| 国产一区二区在线电影| 亚洲高清中文字幕| 国产精品视频在线看| 日韩一级黄色片| 色视频成人在线观看免| 国产真实乱子伦精品视频| 亚洲午夜激情av| 日本一区二区三区国色天香| 91精品国产91久久久久久最新毛片| 大白屁股一区二区视频| 麻豆国产欧美一区二区三区| 一区二区三区欧美日韩| 欧美国产一区二区| 欧美一区二区视频网站| 91免费看视频| 粉嫩蜜臀av国产精品网站| 日日骚欧美日韩| 亚洲三级在线免费观看| 国产日韩欧美精品电影三级在线| 3d动漫精品啪啪一区二区竹菊 | 色吧成人激情小说|