目录 上一页 下一页 下一章

第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:0200EB 3C 90 4D 53 44 4F 53-35 2E 30 00 02 01 01 00.<.MSDOS5.0.....
12A3:021002 E0 00 40 0B F0 09 00-12 00 02 00 00 00 00 00...@............
12A3:022000 00 00 00 00 00 29 FC-10 13 18 4E 4F 20 4E 41......)....NO NA
12A3:02304D 45 20 20 20 20 46 41-54 31 32 20 20 20 FA 33ME    FAT12   .3
12A3:0240C0 8E D0 BC 00 7C 16 07-BB 78 00 36 C5 37 1E 56.....|...x.6.7.V
12A3:025016 53 BF 3E 7C B9 0B 00-FC F3 A4 06 1F C6 45 FE.S.>|.........E.
12A3:02600F 8B 0E 18 7C 88 4D F9-89 47 02 C7 07 3E 7C FB....|.M..G...>|.
12A3:0270CD 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

目录 上一页 下一页 下一章