久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2205|回復: 0
打印 上一主題 下一主題
收起左側(cè)

hex文件和bin文件的區(qū)別

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:240265 發(fā)表于 2017-10-17 23:13 來自手機 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
Hex文件是可以燒寫到單片機中,被單片機執(zhí)行的一種文件格式,生成Hex文件的方式由很多種,可以通過不同的編譯器將C程序或者匯編程序編譯生成hex。
Hex文件如果用特殊的程序來查看(一般記事本就可以實現(xiàn))。打開后可發(fā)現(xiàn),真?zhèn)文件以行為單位,每行以冒號開頭,內(nèi)容全部為16進制碼。Hex文件可以按照如下的方式進行拆分來分析其中的內(nèi)容:
例如:
:020000040000FA , 我把它看做 0x02 0x00 0x00 0x04 0x00 0x00 0xFA
第一個 0x02 為數(shù)據(jù)長度。
緊跟著后面的0x00 0x00 為地址。
再后面的0x04為數(shù)據(jù)類型,類型共分以下幾類:
'00' Data Record
'01' End of File Record
'02' Extended Segment Address Record
'03' Start Segment Address Record
'04' Extended Linear Address Record
'05' Start Linear Address Record
然后,接著0x04后面的兩個 0x00 0x00就是數(shù)據(jù)。最后一個0xFA是校驗碼。
HEX文件的每一行都是這樣的格式:
Intel hex 由一條或多條記錄組成,每條記錄都由一個冒號“:”打頭,其格式如下:
:CCAAAARR...ZZ
其中:
CC
本條記錄中的數(shù)據(jù)字節(jié)數(shù)
AAAA
本條記錄中的數(shù)據(jù)在存儲區(qū)中的起始地址
RR
記錄類型:
00 數(shù)據(jù)記錄 (data record)
01 結(jié)束記錄 (end record)
02 段記錄 (paragraph record)
03 轉(zhuǎn)移地址記錄 (transfer address record)
...
數(shù)據(jù)域
ZZ
數(shù)據(jù)域校驗和
Intel hex文件記錄中的數(shù)字都是16進制格式,兩個16進制數(shù)字代表一個字節(jié)。CC域是數(shù)據(jù)域中的實際字節(jié)數(shù),地址、記錄類型和校驗和域沒有計算在內(nèi)。校驗和是取記錄中從數(shù)據(jù)字節(jié)計數(shù)域(CC)到數(shù)據(jù)域(...)最后一個字節(jié)的所有字節(jié)總和的2的補碼。
而Bin文件是最純粹的二進制機器代碼,沒有格式,或者說是"順序格式"按assembly code順序翻譯成binary machine code.由于分析出來Hex文件中的數(shù)據(jù)域ASCII碼表示的十六進制與二進制一一對應,而且我公司DSP又是16位的,以一個word為最小單位,所以四個十六進制ASCII碼代表一條機器指令單位或者地址.借于上面分析,編寫了工具代碼.大體原理是用fscanf函數(shù)在每行的數(shù)據(jù)域讀入四個ASCII碼,以短整形(short int 16bit)形式儲存,在把這個短整形變量順序fwrite到文件流中去即可.
舉一例說明:
表1
ORG 0000H
LJMP START
ORG 040H
START:
MOV SP,#5FH ;設堆棧
LOOP:
NOP
LJMP LOOP ;循環(huán)
END ;結(jié)束
表2
:03000000020040BB
:0700400075815F000200431F
表3
02 00 40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF 75 81 5F 00 02 00 43
表1為源程序,表2是匯編后得到的HEX文件,表3是由HEX文件轉(zhuǎn)換成的目標文件,也就是最終寫入EPROM的文件,它由編程器轉(zhuǎn)換得到,也可以由HEXBIN一類的程序轉(zhuǎn)換得到。學過手工匯編者應當不難找出表3與表1的一一對應關系,值得注意的是從02 00 40后開始的一長串‘FF’,直到75 81,這是由于偽指令:ORG 040H造成的結(jié)果。

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 五月婷婷婷 | 四虎成人免费电影 | 亚洲视频一区在线播放 | 91麻豆精品国产91久久久久久 | 一区二区三区四区毛片 | 亚洲精品91 | 天堂久 | www.操.com | 一级黄色片免费在线观看 | 精品国产区 | 久久免费观看视频 | 久久久成人精品 | 精品视频一二区 | 五月婷婷激情网 | 99热这里有精品 | 超碰8| 一级在线免费观看 | 久久久毛片 | 欧美aaa级| 99re国产视频 | 午夜亚洲| 在线中文字幕日韩 | 久久人人国产 | 精品在线99| 国产精品美女久久久免费 | 国产成人一区二 | 超碰520| 日韩欧美精品在线 | 日韩中文字幕免费在线 | 亚洲视频免费 | 亚洲综合区| 色综合久| 少妇一区二区三区 | 国产成人在线一区 | 四虎影院在线播放 | 日屁视频| 国产精品一区二区久久精品爱微奶 | 欧美区在线 | 91福利在线导航 | 欧美在线a| 蜜臀久久99精品久久久久久宅男 |