FAT文件系统总结(五)

第 1 项: 
00000000
2E
20
20
20
20 20 20
20
20
20
20
10 00
C6
11
5D   .
..?]
00000010
6B
3B
6B
3B
00 00 12
5D
6B
3B
0C
00 00
00
00
00   k;k;...
]k;......
 
偏移 0x0A 为 0x10,名字为 0x2E(“.”),表示当前目录。 第 2 项:
00000020
2E
2E
20
20
20 20 20
20
20
20
20 10 00
C6
11
5D   ..
..?]
00000030
6B
3B
6B
3B
00 00 12
5D
6B
3B
00 00 00
00
00
00   k;k;...
]k;......
 
偏移 0x0A 为 0x10,名字为 0x2E 0x2E(“..”),表示上一级目录。 
00000100
53
55
42
44
49 52
7E
31
54
58
54 20 00
22
2E
4F
SUBDIR~1TXT .".O
00000110
6C
3B
6D
3B
00 00
E9
84
6D
3B
14 00 00
0E
00
00
l;m;..閯 m;......
 
偏移 0x0A 为 0x20,是一个文件,名字为“SUBDIR~1.TXT”,文件长度为 0x00000E00,文件起始位置在簇 0x00000014。 为了读取该文件,还需要参照 FAT 得到它的簇链。首先要解决一个问题,就是怎么知道一个簇在 FAT 表中的位置? 给定一个簇号 N,确定它在表中的位置(下面是以 FAT16/FAT32 为例,FAT12 稍微复杂 些): 在 FAT 表中的 Sector 号为:N/(BPB_BytsPerSec/fact),如果是 FAT16 则 fact 取 2,如果是 FAT32 则 fact 取 4。 在       Sector 内 的 偏 移 地 址 为 : N%(BPB_BytsPerSec/fact) , 即 N 除 以 (BPB_BytsPerSec/fact)取余数。 因此,簇 0x00000014 在 FAT 表中的 Sector 为 0x14/(512/4)=0,Sector 内偏移为 0x14%(512/4)=0x50 
 
下面是 FAT1 的第 0 个 Sector: 
00000000
F8
FF FF FF FF FF FF FF
03 00 00 00 FF FF FF 0F
....?     
   .
00000010
00
00 00 00 06 00 00 00
FF FF FF 0F 08 00 00 00
........
   .....
00000020
09
00 00 00 0A 00 00 00
FF FF FF 0F FF FF FF 0F
........
      ..
00000030
FF FF FF 0F FF FF FF 0F
FF FF FF 0F FF FF FF 0F
            ....
00000040
FF FF FF 0F FF FF FF 0F
FF FF FF 0F FF FF FF 0F
   .         ...
00000050
15
00 00 00 16 00 00 00
17 00 00 00 18 00 00 00
................
 
00000060
19
00 00 00 1A 00 00 00
FF FF FF 0F 00 00 00 00
........
   .....
00000070
00
00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
................
 
 
本站域名:www.mrtlab.com | QQ交流群:250649022 | 使用条款 | 备案:鄂ICP备2020023514号
MRT数据恢复网,专业的硬盘固件维修与数据恢复技术资料提供站!
Copyright 2003-2020 Powered By MrtLab