我已经给了一个项目结束项目来编写汇编代码来读取MBR并将其保存到软盘。我想我设法在虚拟机器中用DOS中的INT 13h读取它。该机器只有一个硬盘和一个安装XP的分区。 当我读取MBR并打印它时,它给了我很多垃圾,并且在垃圾中说:无效的分区表。加载操作系统时出错......就像在这个网站上一样:http://mbr.adamsatoms.com 但是我的系统启动正常。我是否正确阅读了MBR?它真的是MBR吗?为什么会发生?这是我的代码阅读的一部分,如果它有帮助:MBR说无效的分区表 - 但系统工作!为什么?
mov dx,80h ; hard disk first drive
mov cx,1 ; Cylinder & Sector
mov bx,ds
mov es,bx
mov bx,offset result
mov ax,0201h ; function & sector to be read
int 13h
在此先感谢。
谢谢。现在我明白了,所以如果发生错误,MBR中的错误就可以使用,并不意味着现在有错误。 – Auxiliary 2010-01-02 14:38:51