免费下载应用软件、交流使用经验。

软件下载 经验交流 软件开发 专题论述 请君留言 网站介绍 休闲时光 返回主页
 
关于硬盘主引导扇区问题的问答

作者:本人     来源:本站

    最近一网友就关于硬盘主引导扇区的问题与我进行了交流,因为硬盘主引导扇区的数据非常重要,稍有不慎将有可能造成硬盘数据丢失,以致不得不重新安装系统,我觉得很有必要将我们之间交流的内容让大家知道,故照录如下: 

【问:如何将程序写入主导区,本人使用的是TURBOC20请问如何将程序写入主导区。】

答:一般应使用BIOS的磁盘中断INT13。

【问:请问如何将程序写入主导区,本人使用的是TURBOC20,能否举给我一个程序示列!!!】

答:BIOS的INT13中断磁盘写功能的使用方法如下:
mov ah,03h       ;中断调用的功能号,其中00=复位、01=读磁盘状态、02=读扇区......
mov al,1        ;al中存放写(读)连续扇区的数量,(不能超过本磁道)
mov dh,0        ;磁头号,软盘仅能是0或1,硬盘可以是0至F。
mov dl,81h       ;要操作的驱动器号,00、01分别为软驱A盘和B盘,80h、81h分别为第一硬盘和第二硬盘。
mov ch,0        ;10位(其中占用cl中的高2位)柱面号(即磁道号),从0道开始。
mov cl,0        ;低6位为开始操作的扇区号,从1开始。
mov bx,8000h     ;存放数据的内存地址,段地址必须存放在ES中。
int 13h         ;发出中断调用。

若还是不太清楚的话,可下载我的《微机重要数据备份工具》中的readb.com或wrietb.com程序,反汇编后即可充分理解。

【问:我是把程序写入主导区己后重新起机,问题就来了,机器报错找不到扇区。请问我应该怎么办。】

答:主引导扇区一般是指硬盘的0磁头、0磁道、1号扇区,又称为MBR。在这个扇区中除了存放有硬盘的分区数据(16*4=64个字节),还有一段简短的程序,这个程序的任务主要是读取硬盘的分区信息,判断活动分区,读出活动分区第一个扇区中的数据(也是一段小程序加部分数据),并将CPU的控制权交给新装入内存的程序。因此,主引导扇区的数据非常重要,否则就会在微机自检完毕后无法进入操作系统,有些病毒也是利用这种方法进行破坏。由于主引导扇区仅有512个字节,除了最后两个字节“55H、AAH”、分区数据64个字节外,还需要存放一些错误提示信息,存放程序的空间极其有限,所以这段程序必须非常短小精练。您所写入的程序不知道是否符合要求(除了短小精练外、还需要能实现判断活动分区、读入活动分区的第一个扇区数据并将CPU控制权交给新读入程序),否则的话自然就无法启动操作系统,解决的办法就是将预先保存的主引导扇区数据写回,也就是恢复主引导扇区;若是您没有预先保留主引导扇区数据,写入的程序又太长,覆盖了主引导扇区中的分区数据的话,那么您唯一的办法就是重新分区并格式化硬盘了(当然也有高手能够设法读出原硬盘中的数据,但所花费的金钱可能比买新硬盘还多);倘若您主引导扇区的分区数据没有覆盖,您可以用DOS下的程序(用软盘启动)FDISK加参数MBR来 恢复主引导扇区中的程序,具体用法是在DOS下输入fdisk /mbr并回车。
    除了主引导扇区外,分区的第一个扇区(DOS的扩展分区除外)和软盘0面的第一个扇区也都有引导操作系统的小程序,但其结构与主引导扇区有较大的差别。


注:

发表日期:2000-12-18     修改日期:

备案序号:赣ICP备05002359号

建议使用1024*768分辩率浏览 ☆版权所有 摘抄或转载须得到书面许可☆ Hujiajun ©1999,2016
E-Mail: hu-jj@21cn.com