今天同事的机器无意分区表被破坏了,在百度找了好久才找到这点资料,还不知道是对是错,没有来得急试,同事就把硬盘重新分区了,呵呵!
XXXX:XXXX a 100 汇编编辑命令指令
XXXX:0100 mov ax,0201 读取一个扇区
XXXX:0103 mov bx,0200 读至当前段内存0200处
XXXX:0106 mov cx,0002 柱面号=0,绝对扇区数=2
XXXX:0109 mov dx,80 磁头号=0,驱动器号=80
XXXX:010C int 13 磁盘读写中断
XXXX:010E int 3 断点中断
XXXX:010F 回车
XXXX:XXXX g=100 执行上述指令
XXXX:XXXX d 380 显示备份主分区表内容(Hex:1BEH)
重建MBR的代码:
XXXX:XXXX a 100
XXXX:0100 mov ax,0301 写一个扇区
XXXX:XXXX a 106
XXXX:0106 mov cx,0001 柱面号=0,绝对扇区数=1
XXXX:XXXX g=100 执行上述指令
之后可以将主分区表调出来看是否已正常写入:
XXXX:XXXX a 100
XXXX:0100 mov ax,0201 读取一个扇区
XXXX:XXXX g=100 执行上述指令
XXXX:XXXX d 380 显示主分区表内容(Hex:1BEH)
为了保险起见,最好将MBR内容备份到软盘上:
XXXX:XXXX r bx
:00
XXXX:XXXX r cx
:0200 设定主分区表的大小为512字节,bx记录高位字节,cx记录低位字节
XXXX:XXXX n a:/mbr.dat 文件命名
XXXX:XXXX w 0200 将内存地址0200开始的内容写入软盘
XXXX:XXXX a 100 汇编编辑命令指令
XXXX:0100 mov ax,0201 读取一个扇区
XXXX:0103 mov bx,0200 读至当前段内存0200处
XXXX:0106 mov cx,0002 柱面号=0,绝对扇区数=2
XXXX:0109 mov dx,80 磁头号=0,驱动器号=80
XXXX:010C int 13 磁盘读写中断
XXXX:010E int 3 断点中断
XXXX:010F 回车
XXXX:XXXX g=100 执行上述指令
XXXX:XXXX d 380 显示备份主分区表内容(Hex:1BEH)
重建MBR的代码:
XXXX:XXXX a 100
XXXX:0100 mov ax,0301 写一个扇区
XXXX:XXXX a 106
XXXX:0106 mov cx,0001 柱面号=0,绝对扇区数=1
XXXX:XXXX g=100 执行上述指令
之后可以将主分区表调出来看是否已正常写入:
XXXX:XXXX a 100
XXXX:0100 mov ax,0201 读取一个扇区
XXXX:XXXX g=100 执行上述指令
XXXX:XXXX d 380 显示主分区表内容(Hex:1BEH)
为了保险起见,最好将MBR内容备份到软盘上:
XXXX:XXXX r bx
:00
XXXX:XXXX r cx
:0200 设定主分区表的大小为512字节,bx记录高位字节,cx记录低位字节
XXXX:XXXX n a:/mbr.dat 文件命名
XXXX:XXXX w 0200 将内存地址0200开始的内容写入软盘