只是画出了MBR,DBR,FAT,根目录,目录项之间的关系图。具体的每一个结构在网上搜索其结构就可以,网上多的是。注意:1.MBR位于硬盘的0号扇区,硬盘开始的512字节。2.MBR第08-0B字节小端格式指明该分区的起始扇区数,指明DBR所在的位置。3.MBR第0C-0F字节小端格式指明分区的大小的空间就是从DBR开始。如图标记的红色部分:第08-0B字节的00116f00指明DBR从00116f00个扇区开始,即从地址22de0000开始如图为DBR所在位置:4.DBR中定义了DBR区域所占扇区数、FAT表个数、FAT所占扇区数。5.FAT表数据存储格式如下图:保留区FAT1FAT2根目录数据区DBR其它6.DBR的第0b-0c指明了扇区大小,0d指明了每一个簇占用的扇区数。0e-0f指明了保留扇区数,保留扇区数就是上图中保留区的总大小。10-10是fat表个数,24-27是每个FAT占用的小扇区数。如图:7.从而可以获取到根目录的起始位置:DBR的起始地址+保留扇区数*512+FAT表个数*FAT占用的扇区数*512=根目录的起始地址,可以计算出保留区和FAT表占用的扇区数加上DBR的起始扇区数就可以得出根目录的起始扇区数。使用winhex可以直接定位到要去的扇区数。通过上面的计算可以定位到根目录起始地址是23448000。如图根目录:8.根目录中记录了目录项包括文件的目录项和文件夹的目录项,每一个目录项占用32个字节。文件的目录项记录了文件的属性和文件存放的起始簇号。如果根目录中存放的目录项是文件夹目录项则指明了该文件夹存放的起始簇号只是该起始簇号中存放的也是一个目录项指明了存放的文件和文件夹属性。以此类推。9.FAT表中4个字节为一个表项对应从0号开始的簇号,目录项中定义了文件存放的起始簇号,在FAT表中找到对应的簇号后就知道文件存放的下一个簇号是多少。