0000:0702 7501 JNZ 0705 ;
0000:0704 42 INC DX ;AX加1溢出时(比如0FFFFh+1)DX才加1
0000:0705 80C702 ADD BH,02 ;调整BX,使偏移量增加512字节(刚好一扇区)
0000:0708 E2F7 LOOP 0701 ;0701~0708一段代码暂未明白其真实意图!
0000:070A F8 CLC ;
0000:070B 5E POP SI ;
0000:070C C3 RET ;
;
; 0000:070D:中继跳转
0000:070D EB74 JMP 0783 ;
;
; 070F~0745是错误信息!果然是中文Windows98生成的主引导记录,所以我要特别
; “感谢”微软这个傻B,真难为它竟然用中文表述前两个信息!可惜真需显示的时
; 候鬼才能看懂是什么呢!!!我K!——耍弄我们耶!?
; 070F~0718:“分区表无效”中文信息
; 071A~072B:“加载操作系统时出错”中文信息
; 072D~0744:“Missing operating system”英文信息
0000:070F B7 .
0000:0710 D6 C7 F8 B1 ED CE DE D0-A7 00 BC D3 D4 D8 B2 D9 ................
0000:0720 D7 F7 CF B5 CD B3 CA B1-B3 F6 B4 ED 00 4D 69 73 .............Mis
0000:0730 73 69 6E 67 20 6F 70 65-72 61 74 69 6E 67 20 73 sing operating s
0000:0740 79 73 74 65 6D 00 00 00-00 00 00 00 00 00 00 00 system..........
0000:0750 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0000:0760 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0000:0770 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0000:0780 00 00 00 ...
;
; 0000:0783~0000:0789:控制权移交
0000:0783 8BFC MOV DI,SP ;
0000:0785 1E PUSH DS ;
0000:0786 57 PUSH DI ;构造一个跳转地址
0000:0787 8BF5 MOV SI,BP ;
0000:0789 CB RETF ;交控制权给分区引导记录(0000:7C00)
;
;
0000:078A 00 00 00 00 00 00 ......
0000:0790 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0000:07A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
;
; 07B8~07BB四个字节的内容用于什么呢?(不同机器此四字节均不同)
; 07BE~07FD为分区表,内含四个分区表项(每表项10h字节)
0000:07B0 00 00 00 00 00 00 00 00-86 D8 00 00 00 00 80 01 ................
0000:07C0 01 00 06 3F 3F FD 3F 00-00 00 41 A0 0F 00 00 00 ...??.?...A.....
0000:07D0 01 FE 05 3F FF FE 80 A0-0F 00 C0 4F 2F 00 00 00 ...?.......O/...
0000:07E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0000:07F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 55 AA ..............U.
*1:因为物理扇区号总是从1排列而起
*2:由此可见,就是使用LBA扩展读的功能,主引导记录却限制了分区引导扇区必须在LBA绝对物理扇区
0FFFFFFFFh之前才有可能从该分区引导系统!
0
顶一下0
踩一下