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

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

根據FAT表研究MSP430內存對齊問題

作者:未知   來源:轉自學會珍惜LW   點擊數:  更新時間:2014年08月27日   【字體:

      這兩天仔細研究了下FAT32,發現里面涉及到了一個大端、小端對齊有點意思,這里也簡單總結一下。先在這里說明一下,MSP430是小端對齊的,還有FAT32文件系統中存放字段的順序也是小端模式,所以用MSP430來實現FAT32文件系統的話,讀取數據的時候不需要做特殊處理~

 

      下面簡單講一下大端對齊和小端對齊。

       我們知道,我們定義變量的時候,在內存中會給該變量分配一個位置,如果該變量是一個char型的變量,那么只會分配給它一個字節的位置,但是如果該變量int型或者long int型呢?這里以16位的C編譯器編譯結果來看的話,int型占2個字節,long int型占4個字節,那具體是如何分配呢?我們以0x12345678這個4字節數據為例。

       如果在內存中,按地址從低往高,存儲是4個字節的數據依次是0x78,0x56,0x34,0x12的話,則為小端存儲,如下圖所示;

       如果在內存中,按地址從低往高,存儲的4個字節的數據依次是0x12,0x34,0x56,0x78的話,則為大端存儲如下圖所示;

       不同的CPU,對齊方式不同,所以如果我們在移植程序時,涉及到這種多個字節拼湊成多個字節的數據出問題時,可以考慮是否是內存對齊方式的問題。

        FAT表一般有兩張,兩張表緊挨著,內容完全一樣,第二張是起備份作用。

 

        FAT表中的編號是從0開始,下面依次是第1簇,第2簇……

        其中第0簇和第1簇是存放的FAT表本身,文獻里沒有看到這種說法,文獻里只所數據簇是從第2簇開始,但是這樣理解應該也可以;

        第2簇是首目錄簇,存放的是文件的文件名、文件格式、文件大小、起始位置等信息;

        真正的數據簇是從第3簇開始的。所以如果以SD卡及FAT32文件系統為例,將SD卡格式化之后,存入一個文件,會發現其FAT表的第一個扇區的數據如下圖所示。紅線處為第一個存放數據的簇,為第3簇,是緊跟在首目錄簇后面的那一簇。



        

關閉窗口

相關文章

主站蜘蛛池模板: 全免费a级毛片免费看视频免 | 在线看日韩 | 亚洲视频在线观看一区二区三区 | 日本一级淫片免费啪啪3 | 精品国产91 | 在线a视频| 久久最新网址 | 日韩精品一区二区三区 | 午夜久久av | 一区二区在线看 | 日韩高清一区 | 一区二区三区久久久 | 一区二区三区视频在线免费观看 | 久久久成人免费视频 | 欧美激情va永久在线播放 | 一级做a爰片性色毛片16美国 | 成人毛片视频免费 | 人人爽人人爽 | 欧美日韩在线一区二区 | 99色综合| 国产欧美一区二区精品忘忧草 | 欧美久久久久久久久中文字幕 | 日本精品视频在线观看 | 99精品国自产在线 | 91九色porny首页最多播放 | 亚洲精品电影网在线观看 | 亚洲香蕉 | 99久久久久久99国产精品免 | 国产羞羞视频在线观看 | 丝袜毛片| 精品国产黄a∨片高清在线 成人区精品一区二区婷婷 日本一区二区视频 | 香蕉视频1024| 在线中文视频 | 精品国产91亚洲一区二区三区www | 午夜在线| 久久婷婷国产香蕉 | japanhd美女动 | 伊人久久综合 | 在线观看视频91 | 国产精产国品一二三产区视频 | 无码一区二区三区视频 |