关于Debug重建硬盘分区表(不知道是正确还是错的)

同事机器分区表被破坏,文中给出相关汇编指令用于磁盘操作。包括读取扇区、写扇区、显示备份主分区表内容等指令,还给出重建MBR的代码,以及将MBR内容备份到软盘的操作步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天同事的机器无意分区表被破坏了,在百度找了好久才找到这点资料,还不知道是对是错,没有来得急试,同事就把硬盘重新分区了,呵呵!
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开始的内容写入软盘
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值