• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Prayer

            在一般中尋求卓越
            posts - 1256, comments - 190, trackbacks - 0, articles - 0
              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

            HEX文件和BIN文件區別

            Posted on 2008-09-01 15:53 Prayer 閱讀(673) 評論(0)  編輯 收藏 引用 所屬分類: LINUX/UNIX/AIX日常技巧

            HEX文件和BIN文件是我們經常碰到的2種文件格式。下面簡單介紹一下這2種文件格式的區別:

             

            1 HEX文件是包括地址信息的,而BIN文件格式只包括了數據本身

                 在燒寫或下載HEX文件的時候,一般都不需要用戶指定地址,因為HEX文件內部的信息已經包括了地址。而燒寫BIN文件的時候,用戶是一定需要指定地址信息的。

                    

            2 BIN文件格式

                 對二進制文件而言,其實沒有”格式”。文件只是包括了純粹的二進制數據。

                    

            3 HEX文件格式

                 HEX文件都是由記錄(RECORD)組成的。在HEX文件里面,每一行代表一個記錄。記錄的基本格式為:

                     +---------------------------------------------------------------+

                     |   RECORD  | RECLEN |  LOAD  | RECTYPE | INFO or DATA | CHKSUM |

                     |  MARK ':' |        | OFFSET |         |              |        |

                     +---------------------------------------------------------------+

                     |  1-byte   | 1-byte | 2-byte | 1-byte  |    n-byte    | 1-byte |

                     +---------------------------------------------------------------+

                    

                 記錄類型包括:

                 '00' Data Rrecord:用來記錄數據,HEX文件的大部分記錄都是數據記錄

                 '01' End of File Record: 用來標識文件結束,放在文件的最后,標識HEX文件的結尾

                 '04' Extended Linear Address Record: 用來標識擴展線性地址的記錄

                 '02' Extended Segment Address Record: 用來標識擴展段地址的記錄

                    

                 在上面的后2種記錄,都是用來提供地址信息的。每次碰到這2個記錄的時候,都可以根據記錄計算出一個“基”地址。

                 對于后面的數據記錄,計算地址的時候,都是以這些“基”地址為基礎的。

                    

                 數據記錄的具體格式:

                     +---------------------------------------------------------------+

                     |   RECORD  | RECLEN |  LOAD  | RECTYPE | INFO or DATA | CHKSUM |

                     |  MARK ':' |        | OFFSET |  '00'   |              |        |

                     +---------------------------------------------------------------+

                     |  1-byte   | 1-byte | 2-byte | 1-byte  |    n-byte    | 1-byte |

                     +---------------------------------------------------------------+        

                    

                 看個例子:

                    :020000040000FA

                    :10000400FF00A0E314209FE5001092E5011092E5A3

                    :00000001FF         

                   

                對上面的HEX文件進行分析:

                1條記錄的長度為02LOAD OFFSET0000RECTYPE04,說明該記錄為擴展段地址記錄。數據為0000,校驗和為FA。從這個記錄的長度和數據,我們可以計算出一個基地址,這個地址為0X0000。后面的數據記錄都以這個地址為基地址。

                2條記錄的長度為1016),LOAD OFFSET0004RECTYPE00,說明該記錄為數據記錄。

                數據為FF00A0E314209FE5001092E5011092E5,共16BYTE。這個記錄的校驗和為A3。此時的基地址為0X0000,加上OFFSET,這個記錄里的16BYTE的數據的起始地址就是0x0000 + 0x0004 = 0x0004.

                3條記錄的長度為00LOAD OFFSET0000TYPE 01,校驗和為FF。說明這個是一個END OF FILE RECORD,標識文件的結尾。在上面這個例子里,實際的數據只有16BYTEFF00A0E314209FE5001092E5011092E5,其起始地址為0x4

                       

            4 HEX文件和BIN文件大小有區別

                 HEX文件是用ASCII來表示二進制的數值。例如一般8-BIT的二進制數值0x3F,用ASCII來表示就需要分別表示字符'3'

                 和字符'F',每個字符需要一個BYTE,所以HEX文件需要 > 2倍的空間。

                 對一個BIN文件而言,你查看文件的大小就可以知道文件包括的數據的實際大小。而對HEX文件而言,你看到的文件

                 大小并不是實際的數據的大小。一是因為HEX文件是用ASCII來表示數據,二是因為HEX文件本身還包括別的附加信息。

            久久精品国产只有精品2020| 久久精品无码一区二区三区免费| 久久精品女人天堂AV麻| 久久国产精品久久久| 国内精品久久久久久久久 | 少妇高潮惨叫久久久久久| 久久久久久无码Av成人影院| 久久久精品午夜免费不卡| 亚洲精品99久久久久中文字幕| 久久久婷婷五月亚洲97号色| 亚洲综合婷婷久久| 精品国产青草久久久久福利| 国产精品免费久久| 久久精品国产亚洲av麻豆小说| 久久久久国产亚洲AV麻豆| 久久99国内精品自在现线| 欧美精品丝袜久久久中文字幕 | 久久久久久久人妻无码中文字幕爆| 久久国产精品-国产精品| 久久综合亚洲色一区二区三区| 国产成人精品久久一区二区三区| 久久综合给合综合久久| 色综合久久天天综合| 麻豆AV一区二区三区久久| 久久久久久久久66精品片| 国产激情久久久久影院| 99国产精品久久| 久久婷婷五月综合国产尤物app| 久久久久久无码国产精品中文字幕 | 欧美性大战久久久久久| 国内精品久久久久久久涩爱 | 久久久av波多野一区二区| 久久婷婷五月综合成人D啪| 一本色道久久88加勒比—综合| 久久久国产乱子伦精品作者| 亚洲精品高清国产一线久久| 久久亚洲sm情趣捆绑调教 | 久久综合色之久久综合| 综合久久一区二区三区 | 麻豆亚洲AV永久无码精品久久| 久久久久亚洲av成人网人人软件|