Operating system FAT12-从根目录读取文件的第一个群集号

Operating system FAT12-从根目录读取文件的第一个群集号,operating-system,fat,Operating System,Fat,在FAT12的根目录中,字节26-27表示文件的第一个集群的编号。然而,FAT12中的群集编号为12位长。那么根目录中2字节条目的哪一部分包含实际的12位集群号呢?在读取这2个字节以获取集群时是否需要执行任何转换?我在互联网上到处找了找,但找不到合适的解释。最低的12位,也就是说,你在你的代码中做了一个&0x0FFF。但另一方面,使用的是完整的16位–其他4位仅用0填充,因此数字是一个有效字(16位整数)。您确定这是我们讨论的群集吗?FAT12/FAT16中的IIRC,该编号为扇区编号。在FAT

在FAT12的根目录中,字节26-27表示文件的第一个集群的编号。然而,FAT12中的群集编号为12位长。那么根目录中2字节条目的哪一部分包含实际的12位集群号呢?在读取这2个字节以获取集群时是否需要执行任何转换?我在互联网上到处找了找,但找不到合适的解释。

最低的12位,也就是说,你在你的代码中做了一个
&0x0FFF
。但另一方面,使用的是完整的16位–其他4位仅用0填充,因此数字是一个有效字(16位整数)。

您确定这是我们讨论的群集吗?FAT12/FAT16中的IIRC,该编号为扇区编号。在FAT32中,它是一个集群编号。它取决于每个集群的扇区,但从一般意义上讲,我指的是集群编号。例如,我正在使用软盘映像作为引导盘,因此每个集群的扇区数=1,所以集群=>sector。