DOS下重新加载MBR,为啥没能正常重启系统
代码如下,这段代码不是放到MBR里运行的,用NASM编译后在DOS里运行,用DEBUG查看,正常加载MBR到0:7C00H了
,程序也能正常跳转到0:7C00H处,但是无法用重新加载的MBR重启系统,为啥?
org 100h
start:
xor ax,ax
mov ds,ax
mov es,ax
mov ax,201h
mov cx,1
mov dx,80h ;DL=驱动器,00H~7FH:软盘;80H~0FFH:硬盘
mov bx,7c00h ;ES:BX=缓冲区的地址
int 13h
xor ax,ax
xor bx,bx
xor cx,cx
xor dx,dx
jmp word 0000h:7C00h