![]() | 第8章 文件句柄功能与磁盘 | -231- | |||||||||||||||||||
12A3:010E 12A3:0110 12A3:0113 12A3:0115 12A3:0117 |
MOV DL,00 MOV BX,0200 INT 13 INT 20 [Enter] |
;读取A驱 ;缓冲区首定为200H ;读入数据 ;结束 |
|||||||||||||||||||
先在A驱动器中放一片软盘,而后运行这个程序,看看驱动器是否有动作。然后我们列出刚刚读入内存的数据: | |||||||||||||||||||||
-G=100[Enter] | |||||||||||||||||||||
-d2000[Enter] | |||||||||||||||||||||
12A3:0200 | EB 3C 90 4D 53 44 4F 53-35 2E 30 00 02 01 01 00 | .<.MSDOS5.0..... | |||||||||||||||||||
12A3:0210 | 02 E0 00 40 0B F0 09 00-12 00 02 00 00 00 00 00 | ...@............ | |||||||||||||||||||
12A3:0220 | 00 00 00 00 00 00 29 FC-10 13 18 4E 4F 20 4E 41 | ......)....NO NA | |||||||||||||||||||
12A3:0230 | 4D 45 20 20 20 20 46 41-54 31 32 20 20 20 FA 33 | ME FAT12 .3 | |||||||||||||||||||
12A3:0240 | C0 8E D0 BC 00 7C 16 07-BB 78 00 36 C5 37 1E 56 | .....|...x.6.7.V | |||||||||||||||||||
12A3:0250 | 16 53 BF 3E 7C B9 0B 00-FC F3 A4 06 1F C6 45 FE | .S.>|.........E. | |||||||||||||||||||
12A3:0260 | 0F 8B 0E 18 7C 88 4D F9-89 47 02 C7 07 3E 7C FB | ....|.M..G...>|. | |||||||||||||||||||
12A3:0270 | CD 13 72 79 33 C0 39 06-13 7C 74 08 8B 0E 13 7C | ..ry3.9..|t....| | |||||||||||||||||||
大家看到的内容可能与笔者给出的不一样,原因在于我们使用了不同的格式化程序。如果是使用MSDOS6.20所带的FORMAT程序格式化磁盘,而且保证系统无病毒入侵的情况下,那么大家应该看到笔者所给出的数据。 将准备好的几片磁盘依次放入驱动器中并运行此程序,如果这些磁盘确实使用同一程序做的格式化,那么就会发现在这些磁盘的0面0磁道的第一个扇区内存储着相同的内容。由此我们可以得出这样一个结论:当一片磁盘格式化完毕后,这片磁盘的0面0磁道第一个扇区内已经存储了数据,且用不同的程序进行格式化所存储的内容也有区别。 这一扇区内究竟存放的是什么东西,有什么作用呢?从D命令显示的结果来看这些数据中包含有DOS系统的两个隐含文件的文件名,还有一段英文信息。不知道这一段英文信息你是否见过,当我们使用一片不带DOS系统的软盘启动机器时,我们会看到这段信息。从这两点我们可以推断这些数据和操作系统有关。我们下面尝试用U命令将其反汇编,看看能得到些什么: |
|||||||||||||||||||||
-U200[Enter] | |||||||||||||||||||||
121D:0200 121D:0202 121D:0203 121D:0204 121D:0205 121D:0206 121D:0207 121D:0208 121D:020B 121D:020D 121D:020F |
EB3C 90 4D 53 44 4F 53 352E30 0002 0101 0002 |
JMP NOP DEC PUSH INC DEC PUSH XOR ADD ADD ADD |
023E BP BX SP DI BX AX,302E [BP+SI],AL [BX+DI],AX [BP+SI],AL |
||||||||||||||||||
Copyright © 2004-2015 Reanimator | www.cookmoon.org |