資源描述:
《硬盤主引導(dǎo)扇區(qū)和系統(tǒng)引導(dǎo)扇區(qū)的維...》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。
1、實(shí)訓(xùn)9硬盤主引導(dǎo)扇區(qū)和系統(tǒng)引導(dǎo)扇區(qū)的維護(hù)一、實(shí)訓(xùn)輔導(dǎo):(一)DEBUG程序在維護(hù)(讀取、修改和備份)硬盤OSBR系統(tǒng)引導(dǎo)扇區(qū)(即DOS引導(dǎo)扇區(qū)或物理0柱面1磁頭1扇區(qū),也就是0-1-1扇區(qū))時(shí)的應(yīng)用1、用L命令將0-1-1扇區(qū)內(nèi)容讀入至內(nèi)存CS:0100的方法:-LCS:0100201回車,以后可用D命令查看:-DCS:0100Ln回車(n為16進(jìn)制字節(jié)數(shù),CS:0100為要讀的起始地址)2、用E或F命令改寫已讀入內(nèi)存中的0-1-1扇區(qū)內(nèi)容的方法(以將最后三字節(jié)0055AA改寫為1144BB為例):-D02FDL3回車,顯示00
2、55AA-E02FD1144BB回車,用E命令修改三個(gè)字節(jié)-D02FDL3回車顯示1144BB說(shuō)明三個(gè)字節(jié)已修改成功-F02FDL30055AA回車,用F命令改回原來(lái)數(shù)據(jù)0055AA-D02FDL3回車,顯示0055AA,說(shuō)明改回成功-F02FD02FF1144BB回車,再用F命令的另一種用法修改-D02FDL3回車,顯示1144BB,說(shuō)明已修改成功3、將內(nèi)存中的從CS:0100---02FF這512B寫入硬盤0-1-1扇區(qū)的方法:-WCS:0100201回車,寫入以后可再用L命令讀入內(nèi)存:-LCS:0100201回車,讀至內(nèi)存
3、以后,再用D命令查看:-D0100L200回車,顯示從0100---02FF的200H字節(jié),最后三字節(jié)為1144BB,用E或F命令將其再改回為0055AA:-E02FD0055AA回車或者–F02FD02FF0055AA回車或者-F02FDL30055AA回車,再用D命令查看:-D02FDL3回車顯示0055AA-W0100201回車(寫盤)-L0100201回車(讀盤)-D0100L200回車(查看512字節(jié))4、將0-1-1扇區(qū)存為備份文件BOOTSECT.BAK的方法DEBUG回車-NA:BOOTSECT.BAK回車(定
4、義保存路徑和文件名)-L0100201回車(將扇區(qū)讀至內(nèi)存)-RCX回車CX0000:200回車(計(jì)劃要寫的字節(jié)數(shù)為200H,即512字節(jié))-W回車(將內(nèi)存寫200H字節(jié)到文件)WRITING00200BYTES-Q回車此時(shí)可在A:下看到已生成大小為512字節(jié)的文件BOOTSECT.BAK5、將0-1-1扇區(qū)的備份文件BOOTSECT.BAK重寫回0-1-1扇區(qū)的方法DEBUG回車-NA:BOOTSECT.BAK回車-LCS:0500回車(讀文件內(nèi)容到內(nèi)存)-D0500L200回車(查看,此句可省)-D06FDL3回車(只查
5、看最后三個(gè)字節(jié)0055AA,此句可?。?W0500201回車-Q回車(二)DEBUG程序在維護(hù)硬盤MBR主引導(dǎo)扇區(qū)(即物理0柱面0磁頭1扇區(qū),也就是0-0-1扇區(qū))時(shí)的應(yīng)用1、這0-0-1扇區(qū),為主引導(dǎo)扇區(qū),不屬于任何分區(qū)和任何操作系統(tǒng),因而不能用簡(jiǎn)單的DOS命令讀出和寫入(硬盤上其它扇區(qū)都可以用簡(jiǎn)單的DOS命令讀出和寫入,唯有0-0-1扇區(qū)不能簡(jiǎn)單地用DOS命令讀寫)。2、主引導(dǎo)扇區(qū)本身是低格時(shí)劃分的,但其內(nèi)容是分區(qū)時(shí)形成的(MBR/DPT/55AA)。它的512B(或200HB)的前446字節(jié)為MBR(從0000H---01
6、BDH),后面為共64字節(jié)的4個(gè)16字節(jié)的分區(qū)表DPT(從01BE—01FD),01BE—01CD/01CE—01DD/01DE-01ED/01EE—01FD為4個(gè)16字節(jié)的分區(qū)表,因此,一個(gè)硬盤最多可以分4個(gè)主分區(qū)。通常用FDISK分區(qū)時(shí)只形成兩個(gè)主分區(qū)(一個(gè)主DOS分區(qū),通常做成可引導(dǎo)的;另一個(gè)為擴(kuò)展DOS分區(qū),而這個(gè)作為第二個(gè)主分區(qū)的擴(kuò)展DOS分區(qū)又可分為1個(gè)到多個(gè)邏輯DOS分區(qū)),因而在用FDISK對(duì)硬盤進(jìn)行分區(qū)實(shí)際只產(chǎn)生前兩個(gè)(每個(gè)16字節(jié))分區(qū)表,而后面的兩個(gè)分區(qū)表實(shí)際上是空的(為全0)。主引導(dǎo)扇區(qū)的最后是兩個(gè)字節(jié)為
7、有效標(biāo)志55AA(地址為01FE-01FF)。3、讀0-0-1扇區(qū)至內(nèi)存并保存為文件MBR.BAK的方法:DEBUG回車-ACS:0100回車(CS:0100可為100,或不打?yàn)榭?XXXX:0100MOVAX,0201回車,(讀取一個(gè)扇區(qū),0301為寫一個(gè)扇區(qū))XXXX:0103MOVBX,0500回車,(讀至內(nèi)存當(dāng)前段0500處,地址0500可任意修改)XXXX:0106MOVCX,0001回車,(指定要讀的扇區(qū)所在柱面號(hào)即磁道號(hào)為0號(hào)、扇區(qū)號(hào)為1號(hào))XXXX:0109MOVDX,0080回車,(指定要讀的扇區(qū)所在的磁頭號(hào)即
8、磁面號(hào)為0號(hào)、所在的驅(qū)動(dòng)代號(hào)為80,為硬盤,因?yàn)橛脖P的代號(hào)為80,軟盤的代號(hào)為00)XXXX:010CINT13回車XXXX:010EINT20回車XXXX:0110回車-G=0100回車(從CS:0100處地址起運(yùn)行這程序段)此時(shí)會(huì)顯示:Programterm