如何获取某软盘现在的面数/磁道数/扇区数
编号:QA003088
建立日期: 2000年7月1日 最后修改日期:2000年7月1日
所属类别:
zhoujie:
操作系统:dos
编程工具:qb/tc/tp
问题:使用TC/QB/Tp,如何获取某软盘现在的面数/磁道数/扇区数?(注:该软盘可能因被Hdcopy格式化而采用了非标准的格式)
水平: 高手
回答:
你可用INT13读入软盘的0面0道1扇,其意义如下:
引导扇区(Boot Area):
BPB表:
保留扇区数 ━━━━━━━━━┓
每簇扇区数 ━━━━━━━┓ ┃
每扇区字节数 ━━━━━┓ ┃ ┃
━┻ ┻ ┻━
0B75:0000 EB 3C 90 4D 53 44 4F 53-35 2E 30 00 02 08 01 00
0B75:0010 02 00 02 00 00 F8 97 00-39 00 0F 00 39 00 00 00
┏ ┳━ ┳━┏ ┳━ ━┳ ━┳ ━┳
FAT表数 ┛ ┃ ┃ ┃ ┃ ┃ ┃ ┃
根目录项数━━┛ ┃ ┃ ┃ ┃ ┃ ┃
逻辑扇区数━━━━━┛ ┃ ┃ ┃ ┃ ┃
磁盘介质说明━━━━━━┛ ┃ ┃ ┃ ┃
FAT表占用扇区数━━━━━━━┛ ┃ ┃ ┃
每道扇区数━━━━━━━━━━━━━┛ ┃ ┃
磁头数━━━━━━━━━━━━━━━━━━┛ ┃
隐藏扇区数━━━━━━━━━━━━━━━━━━━┛
0B75:0020 1F B2 04 00 80 00 29 D4-0D 17 18 4E 4F 20 4E 41
0B75:0030 4D 45 20 20 20 20 46 41-54 31 36 20 20 20 FA 33
━┳━ ┳━
FAT(ASC源码) ━━━━━━━━━┛ ┃
FAT每项位数(ASC源码)━━━━━━━━━┛
根目录表占扇区数=根目录表项数×每项字节数÷每扇区字节数
系统占用扇区数=引导扇区数+FAT表数×FAT表占用扇区数+根目录表占扇区数
某簇第一逻辑扇区号=(簇号-2)?每簇扇区数+系统占用扇区数
如果你看不清上面的表格,可以通过kvdvm@263.net向我要上表的WPS文档(我学这些内容时正在用WPS)。
此问题由kvdvm回答。
| |
|
|
| |
|
|