此故障是硬盤的分區表中沒有可引導分區或是可引導分區標誌錯引起的。
硬盤分區表記錄了整個硬盤的劃分情況。每個硬盤可有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 (退出匯編程序)
退出後重新啟動。