在WINHEX上看到:逻辑扇区0对应的物理扇区是8192,就是2000H,奇怪的是这个2000H怎么确立的?
不同容量的和不同牌子的U盘会不会不一样?
我的是爱国者4G的U盘.
在WINHEX上看到:逻辑扇区0对应的物理扇区是8192,就是2000H,奇怪的是这个2000H怎么确立的?
不同容量的和不同牌子的U盘会不会不一样?
我的是爱国者4G的U盘.
这个需要你去看看文件系统的资料
略有进展,这是用winhex打开物理扇区0后的截图,逻辑扇区0对应的物理扇区好像就在这里面,已知的表中1c2表示分区类型,0B代表FAT32, 06代表FAT16;
疑问:表中1c6应该是小端模式的2000吧,感觉很像,刚好就是逻辑扇区0对应的物理扇区数2000H,对吗?
所有的U盘内部逻辑和物理扇区都是小端模式吗?万一是大端的怎么找到?这里已经是0物理扇区了.
最后上图中,其他几个数值是什么意思啊?
期待您的回复.
已经弄清楚了 ================================================================================ 用CH375读扇区子程序读0扇区. 前446字节的数据全是0, 接下来的64字节的数据就是我们所关心的重要数据,注意是小端模式: 00~00 1 可引导标志,0x00不可引导,0x80可引导 (1BE) 01~03 3 分区起始CHS地址 (1BF 1C0 1C1) 分区起始CHS地址: 第一个字节用于记录分区起始磁头号。 第二个字节的低6位用于记录分区起始扇区号 用10个bit记录分区起始柱面号:第二个字节的高两位作为起始柱面号的高两位,第三个字节的8个bit作为分区起始柱面号的低8位。 04~04 1 分区类型 (1C2) 分区类型符: 00H——表示该分区未用 06H——FAT16基本分区 0BH——FAT32基本分区 05H——扩展分区 07H——NTFS分区 0FH——(LBA模式)扩展分区 83H—— Linux分区 05~07 3 分区结束CHS地址 (1C3 1C4 1C5) C/H/S(柱面/磁头/扇区)是老式硬盘的寻址方式,这种寻址方式来管理硬盘效率很低;而现在几乎所有的硬盘都支持LBA(全称是Logic Block Address,即扇区的逻辑块地址)寻址方式,这种管理方式简单高效。 在LBA方式下,系统把所有的物理扇区都统一编号,按照从零到某个最大值排列,这样只用一个序数就确定了一个唯一的物理扇区。 U盘不存在柱面问题, 只有一个分区。 08~0B 4 分区起始LBA地址(Little-endian顺序) (1C6 1C7 1C8 1C9) U盘的逻辑扇区0对应的物理扇区起始地址2000H和读卡器的800H就来源于此. 0C~0F 4 分区大小扇区数(Little-endian顺序) (1CA 1CB 1CC 1CD) ==============================================================================