亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 1016 | 回復(fù): 0
打印 上一主題 下一主題

各種燒寫文件格式簡介 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2008-10-09 02:48 |只看該作者 |倒序瀏覽

一、ELF
Executable and linking format(ELF)文件是x86Linux系統(tǒng)下的一種常用目標(biāo)文件(object file)格式,有三種主要類型:
(1)適于連接的可重定位文件(relocatable file),可與其它目標(biāo)文件一起創(chuàng)建可執(zhí)行文件和共享目標(biāo)文件。
(2)適于執(zhí)行的可執(zhí)行文件(executable file),用于提供程序的進(jìn)程映像,加載的內(nèi)存執(zhí)行。
(3)共享目標(biāo)文件(shared object file),連接器可將它與其它可重定位文件和共享目標(biāo)文件連接成其它的目標(biāo)文件,動態(tài)連接器又可將它與可執(zhí)行文件和其它共享目標(biāo)文件結(jié)合起來創(chuàng)建一個進(jìn)程映像。
ELF文件格式比較復(fù)雜。
二、HEX
什么是Intel HEX格式?
Intel HEX文件是記錄文本行的ASCII文本文件,在Intel HEX文件中,每一行是一個HEX記錄,由十六進(jìn)制數(shù)組成的機(jī)器碼或者數(shù)據(jù)常量,Intel HEX文件經(jīng)常被用于將程序或數(shù)據(jù)傳輸
存儲到ROM、EPROM,大多數(shù)編程器和模擬器使用Intel HEX文件。
記錄格式
一個Intel HEX文件可以包含任意多的十六進(jìn)制記錄,每條記錄有五個域,下面是一個記錄的格式。
: llaaaatt[dd。。。]cc
每一組字母是獨(dú)立的一域,每一個字母是一個十六進(jìn)制數(shù)字,每一域至少由兩個十六進(jìn)制數(shù)字組成,下面是字節(jié)的描述。
: 冒號 是每一條Intel HEX記錄的開始
ll 是這條記錄的長度域,他表示數(shù)據(jù)(dd)的字節(jié)數(shù)目。
aaaa 是地址域,他表示數(shù)據(jù)的起始地址

tt 這個域表示這條HEX記錄的類型,他有可能是下面這幾種類型
00 —-數(shù)據(jù)記錄
01 —-文件結(jié)束記錄
02 —-擴(kuò)展段地址記錄
04 —-擴(kuò)展線性地址記錄
dd 是數(shù)據(jù)域,表示一個字節(jié)的數(shù)據(jù),一個記錄可能有多個數(shù)據(jù)字節(jié),字節(jié)數(shù)目可以
查看ll域的說明
cc 是效驗和域,表示記錄的效驗和,計算方法是將本條記錄冒號開始的所有字母對  所表示的十六進(jìn)制數(shù)字  都加起來然后模除256得到的余數(shù)最后求出余數(shù)的補(bǔ)碼即是本效驗字節(jié)cc。
: 0300000002005E9D
cc=0×01+NOT((0×03+0×00+0×00+0×00+0×02+0×00+0×5E)%0×100)=0×01+0×9C=0×9D >
數(shù)據(jù)記錄
Intel HEX文件由若干個數(shù)據(jù)記錄組成,一個數(shù)據(jù)記錄以一個回車和一個換行結(jié)束
比如下面的一條數(shù)據(jù)記錄
: 10246200464C5549442050524F46494C4500464C33
10 是此行記錄數(shù)據(jù)的字節(jié)數(shù)目
2462 是數(shù)據(jù)在內(nèi)存中的起始地址
00 是記錄類型00(是一個數(shù)據(jù)記錄)
464C 到 464C 是數(shù)據(jù)
33 是此行記錄的效驗和
三、BIN
BIN文件就是直接的二進(jìn)制文件,內(nèi)部沒有地址標(biāo)記。一般用編程器燒寫時從00開始,而如果下載運(yùn)行,則下載到編譯時的地址即可。
總結(jié):可以由ELF文件轉(zhuǎn)化為其它兩種文件,HEX也可以直接轉(zhuǎn)換為BIN文件,但是 BIN要轉(zhuǎn)化為HEX文件必須要給定一個基地址。而HEX和BIN不能轉(zhuǎn)化為elf文件,因為ELF的信息量要大。另外還有一種ads的調(diào)試文件axf,它可以轉(zhuǎn)化為BIN文件,用以下命令 fromelf -nodebug xx。axf -bin xx。bin即可。

本文來自ChinaUnix博客,如果查看原文請點(diǎn):http://blog.chinaunix.net/u1/34267/showart_1276349.html
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP