装系统时出现“press a key to rebot"
发布网友
发布时间:2024-10-20 13:42
我来回答
共1个回答
热心网友
时间:2024-11-14 15:54
此故障是硬盘的分区表中没有可引导分区或是可引导分区标志错引起的。
硬盘分区表记录了整个硬盘的划分情况。每个硬盘可有4个分区,每个分区记录长度为16字节,其第1字节是引导标志:80H表示从该分区引导操作系统,00H则表示非操作系统分区,其他值都是错误的。若有2个以上分区记录的第1字节是80H,或有某个分区记录的第1字节既非80H,又非00H,则显示出错信息“Invalid partition table (非法分区表)”后死机。如果使用中文Windows 98作为操作系统,故障现象是在屏幕上显示一串乱码,或清屏幕后显示“PRESS A KEY TO REBOOT”,等待用户按键重新启动。
解决此故障的方法是先用系统软盘进行启动(系统盘中还应有DEBUG.EXE、FDISK.EXE等文件),然后调用DEBUG或其他工具软件检查主引导扇区。检查硬盘分区表中4个分区记录的第1个字节是否有既非80H又非00H的,或者有2个或以上的80H。
具体做法是当A盘启动成功后,进入DEBUG编写一段小程序,调出硬盘的主引导扇区,检查其内容。操作方法如下。
A:\>debug ↙-a (编写程序)
XXXX:X100 mov ax,201
XXXX:X103 mov bx,200
XXXX:X106 mov cx,01
XXXX:X109 mov dx,80
XXXX:X10c int 13
XXXX:X10e int 20
XXXX:X110 (直接回车结束编程,XXXX表示内存段地址)
-g (执行程序,读出主引导扇区)
-d3B0 3FF (查看主引导扇区中的硬盘分区表内容)
屏幕上便显示下面的数据(这里的数字是16进制的,以H为单位):
XXXX: X3B0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 XX **
XXXX: X3C0 ** ** ** ** ** ** ** ** ** ** ** ** ** ** XX **
XXXX:X3D0 ** ** ** ** ** ** ** ** ** ** ** ** ** ** XX 00
XXXX: X3E0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 XX 00
XXXX: X3F0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 55 AA
从3BE(H)到3FE(H)共64个字节是硬盘分区表,分为4个分区记录,每个分区记录占16个字节。其中用XX表示的是每个分区记录的第1个字节,后15个字节表示该分区的各种参数,这里用**表示。当硬盘中只有DOS一种操作系统时(Windows操作系统实质上也是DOS),应该只有3BE(H)1个字节是80H,其他3个都是00H,显示结果若非如此,则要改写。改写的方法如下:
-e3XX ↙ (改写3XX(H)单元的内容)
.XX YY (XX是该单元原来的内容,YY是现在输入要改正的内容,回车则是结束改写,不分大小写)
例如3BE(H)是 00,要改正为80,则过程应为:
-e3be
.00 80
改完后要写回硬盘的主引导扇区,键入下述命令。
-a100
XXXX:X100 mov ax,301 (将刚才编写的读程序改为写程序)
XXXX:X103
-g (执行写命令)
-q (退出汇编程序)
退出后重新启动