偏移量(offset) |
长度(length) |
描述(description) |
格式(format) |
注释(comments) |
00H |
8字节(8 bytes) |
文件名(filename) |
ASCII码,但如果第一个字节是以下代码则是条件代码:(ASCII chars,or special code if first char:) 00H=名字不曾被使用(name never used) 05H=第一个字节是E5H(first character or name is realy E5H) E5H=文件被使用过但已被删除。(file was used,but has been erased) 2EH=登入的是一个目录(entry is a directory) |
必须用空格添满(must be padded with spaces to fill field) |
08H |
3字节(3bytes) |
扩展名[file type(extension)] |
ASCII码字符(ASCII chars) |
必须用空格添满(must be padded with spaces to fill field) |
0BH |
1字节(byte) |
文件属性(file attribute) |
每位含义(bit codes): bit0=只读(read-only) bit1=隐藏(hidden) bit2=系统(system) bit3=卷标(volumn label) bit4=目录(directory) bit5=归档(archive) bit6=备用(unused) bit7=备用(unused) | |
0CH |
10字节(10 bytes) |
保留(reserved) | ||
16H |
字(word) |
最后一次升级的时间(time file last updated) |
代码意义:(无符号16进制整数)时间=小时*2048+分钟*32+秒+2 [coded word:(unsigned 16 bit-bit integer) time=Hr*2048+Min*32+Sec+2] |
首先必须是有意义的字节(*:least significant byte first) |
18H |
字(word) |
最后一次升级的日期(date file last updated) |
代码意义:(无符号16进制整数)时间=(年份-1980)*512+月份*32+日 [coded word:(unsigned 16 bit-bit integer) time=(Yr-1980)*512+Mon*32+Day] |
首先必须是有意义的字节(*:least significant byte first) |
1AH |
字(word) |
开始簇的号码(starting cluster number) |
单字二进制整数(word binary integer*) | |
1CH |
双字(dbl word) |
文件大小(file size) |
双字二进制整数(double word binary integer*) |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | 当其值为“1”时表示(meaning if set to 1) | 当其值为“0”时表示(meaning if set to 0) |
v | 只读文件(read-only file) | 可读写文件(read/write file) | |||||||
v | 隐藏文件(hidden file) | 可见文件(visible file) | |||||||
v | 系统文件(system file) | 正常文件(regular file) | |||||||
v | 卷标(volumn name) | 正常文件(regular file) | |||||||
v | 目录名(directory name) | 正常文件(regular file) | |||||||
v | 文件最后一次备分后有变化(file changed since last backup) | 文件最后一次备分后无变化(file unchanged since last backup) |
这里最好结合DOS命令ATTRIB来看。
Entry |
范例(Example Value) |
用途(Use) |
0 |
FFF8 |
硬盘标示符字节(Disk ID byte) |
1 |
FFFF |
填充物(Filler) |
2 |
0003 |
簇的值解释(Cluster value): 0000 =未用的簇(unused cluster) 0002-ffff=下一簇的号码(next cluster number) fff0-fff6=保留的簇 (reserved cluster) fff7 =坏簇标记(cluster marked bad) fff8-ffff=文件中最后的簇 last cluster in file |
3 |
0004 | |
4 |
0005 | |
5 |
FFFF | |
6 |
0000 |
dos3.3 and dos4.0 磁盘引导记录结构(BOOT record layout)
偏移量(offset) | 长度(length) | 描述(description) | DOS版本(DOS version) |
00 | 3字节(3 bytes) | JMP to boot code | |
03 | 8字节(8 bytes) | OEM商的名称和版本(OEM name and version) | |
0B | 1字(word) | 每一扇区包含的字节数(bytes per sector) | |
0D | 1 字节(byte) | 每一簇包含的扇区数sectors per cluster(must be a power of 2) | |
0E | 1字(word) | 保留扇区[reserved sectors(for Dir,FAT,etc.)] | |
10 | 1字节(byte) | 文件分配表副本的数字(Number of copies of FAT) | |
11 | 1字(word) | 根目录的目录最大数个数(Maximum number of root directory entries) | |
13 | 1字(word) | 在逻辑影象里的扇区总数(Total number of sectors in logical image) | |
15 | 1字节(byte) | 媒体描述字节(Media descriptor byte) | |
16 | 1字(word) | 文件分配表的数字(number of sectors in FAT) | |
18 | 1字(word) | 每条磁轨包含的扇区(number of sectors per track) | |
1A | 1字(word) | 头部分的数字number of heads | |
1C | 1字(word) | 隐藏扇区的数字(number of hidden sectors) | |
1E | 1字(word) | 隐藏扇区的数字(HO number of hidden sectors) | |
20 | 双字(dbl word) | 逻辑扇区的数字(number of logical sectors) |
DOS5.0磁盘引导记录结构 BOOT sector structrure
偏移量(offset) |
长度(length) |
描述(description) |
DOS版本(DOS version) |
1E |
双字(dbl word) |
隐藏部分的大小(number of hidden sectors) |
DOS 5.0 引导扇区格式(boot sector structure) |